oxen-observer/templates/index.html
2022-12-21 16:57:40 -04:00

11 KiB
Raw Blame History

{% extends "_basic.html" %} {% block content %}
Server Time: {{ server.datetime | format_datetime }} Transaction Pool {% if config.pusher %} Transaction pusher {% endif %} {% if config.key_image_checker %} Key images checker {% endif %} {% if config.output_key_checker %} Output keys checker {% endif %} {% if config.autorefresh_option %} {% if refresh %} Autorefresh is ON ({{refresh}} s) {% else %} Autorefresh is OFF {% endif %} {% endif %} {% if info.mainnet and config.lokinet_mainnet_url %} Connect via Lokinet {% elif info.testnet and config.lokinet_testnet_url %} Connect via Lokinet {% elif info.devnet and config.lokinet_devnet_url %} Connect via Lokinet {% endif %} {% if config.testnet_url and not info.testnet %} Go to testnet explorer {%if config.lokinet_testnet_url%}(via Lokinet){%endif%} {% endif %} {% if config.devnet_url and not info.devnet %} Go to devnet explorer {%if config.lokinet_devnet_url%}(via Lokinet){%endif%} {% endif %} {% if config.mainnet_url and not info.mainnet %} Go to mainnet explorer {%if config.lokinet_mainnet_url%}(via Lokinet){%endif%} {% endif %} {% if info.testnet %} This is TESTNET blockchain {% elif info.devnet %} This is DEVNET blockchain {% endif %}
{% if info %}

Height: {{info.height}} Hard fork: v{{hf.version}}{%if 'revision' in hf%}.{{hf.revision}}{%endif%} {% if hf.version >= 16 %} Next Pulse: {{(info.pulse_target_timestamp|from_timestamp - server.datetime) | reltime(neg_is_now=true) }} {% else %} Network difficulty: {{info.difficulty}} Hash rate: ~{{(info.difficulty / info.target) | si }}H/s {% endif %} Staking requirement: {{stake.staking_requirement | oxen}} Base fee: {{fees.fee_per_output | oxen}}/output + {{(fees.fee_per_byte * 1000) | oxen}}/kB Blink fee: {{fees.blink_fee_per_output | oxen}}/output + {{(fees.blink_fee_per_byte * 1000) | oxen}}/kB Block size limit: {{(info.block_size_limit / 2) | si}}B/{{info.block_size_limit | si}}B Blockchain size: {{info.database_size | si}}B

{% endif %}

Circulating Supply*:: {% if not emission or emission.status == 'BUSY' %} (still calculating...) {% elif emission.status == 'OK' %} {{(emission.emission_amount - emission.burn_amount) | oxen}} (Coinbase: {{emission.emission_amount | oxen}} Fees: {{emission.fee_amount | oxen}} Burned: {{emission.burn_amount | oxen}} Batched: {{accrued_total | oxen}}). {%endif%}

* — The circulating supply may exclude any currently publicised locked OXEN; otherwise it is equal to the coinbase minus the number of burned coins. Fees include paid transaction fees minus any portion that was burned.

TX Type Legend: 🏁 Service Node Registration ⚑ Contribution 👍 Recommission 👎 Decommission 🚫 Deregistration 📋 IP Change Penalty 🔓 Stake Unlock 🎫 Oxen Name System Purchase 💾 ONS Update

{% include 'include/mempool.html' %}

Transactions in {% if page == 0 %} the Last {{blocks|length}} Blocks {% else %} Blocks {{blocks[0].height}}{{blocks[-1].height}} {% endif %} 🔗

{% set block_sizes = blocks | map(attribute='block_size') | sort %} {%if block_sizes|count > 0%}

(Min. / Median / Average / Max. size of these blocks: {{block_sizes[0] | si}}B / {{(block_sizes[(block_sizes|count-1)//2]/2 + block_sizes[(block_sizes|count)//2]/2) | si}}B / {{(block_sizes|sum / block_sizes|count) | si}}B / {{block_sizes[-1] | si}}B)

{%endif%}
{% include 'include/block_page_controls.html' %} {% import 'include/tx_type_symbol.html' as symbol %} {% import 'include/tx_fee.html' as fee %} {% for b in blocks | reverse %} {% set tx_i = 0 %} {% if b.txs | length > 0 and b.txs[0].coinbase %} {% set tx_i = 1 %} {% else %} {# no miner tx, e.g. from batching #} {%endif%} {% for tx in b.txs[tx_i:] %} {% endfor %} {% endfor %}
Height Age [hⓂ️s] Size Type Transaction Hash Fee Rewards In/Out TX Size
{{b.height}} {{b.timestamp | from_timestamp | ago}} {{b.block_size | si}} {{symbol.display(b.txs[0])}} {{b.txs[0].tx_hash}} {{fee.display(b.txs[0])}} {{b.coinbase_payouts | oxen(tag=False, fixed=True, decimals=2)}} 0/{{b.txs[0].vout | length}} {{b.txs[0].size | si}}
{{b.height}} {{b.timestamp | from_timestamp | ago}} {{b.block_size | si}}
{{symbol.display(tx)}} {{tx.tx_hash}} {{fee.display(tx)}} {{tx.vin | length}}/{{tx.vout | length}} {{tx.size | si}}
{% include 'include/block_page_controls.html' %}
{%set limit_awaiting = 10%} {%set limit_inactive = 10%} {%set limit_active = 10%} {%include 'include/service_nodes_lists.html'%} {%if checkpoints and checkpoints.checkpoints|length > 0%} {%include 'include/checkpoints.html'%} {%endif%} {% endblock %}