custom-ocean.xyz-dashboard/templates/blocks.html
DJObleezy 5a6331d032 Enhance earnings features and improve data handling
- Updated `App.py` to add a datetime formatting filter and enhance the earnings route with better error handling and currency conversion.
- Revised `README.md` to document new features, including earnings breakdown and API endpoints.
- Added default currency setting in `config.json` and a function to retrieve it in `config.py`.
- Improved `data_service.py` with a new method for fetching payment history and enhanced error handling.
- Updated `setup.py` to include new CSS and JS files for the earnings page.
- Enhanced styling in `common.css`, `dashboard.css`, and `earnings.css` for better responsiveness.
- Optimized `workers.js` for improved performance with a progressive loading approach.
- Updated multiple HTML files to reflect new dashboard structure and features.
- Enhanced `worker_service.py` for consistent hashrate values and improved logging.
2025-04-28 09:20:56 -07:00

95 lines
3.5 KiB
HTML

{% extends "base.html" %}
{% block title %}BLOCKS - BTC-OS Dashboard {% endblock %}
{% block css %}
<link rel="stylesheet" href="/static/css/blocks.css">
<link rel="stylesheet" href="/static/css/theme-toggle.css">
{% endblock %}
{% block header %}BLOCKCHAIN MONITOR v 0.1{% endblock %}
{% block blocks_active %}active{% endblock %}
{% block content %}
<!-- Latest block stats -->
<div class="row mb-2 equal-height">
<div class="col-12">
<div class="card">
<div class="card-header">LATEST BLOCK STATS</div>
<div class="card-body">
<div class="latest-block-stats">
<div class="stat-item">
<strong>BLOCK HEIGHT:</strong>
<span id="latest-height" class="metric-value white">Loading...</span>
</div>
<div class="stat-item">
<strong>TIME:</strong>
<span id="latest-time" class="metric-value blue">Loading...</span>
</div>
<div class="stat-item">
<strong>TRANSACTIONS:</strong>
<span id="latest-tx-count" class="metric-value white">Loading...</span>
</div>
<div class="stat-item">
<strong>SIZE:</strong>
<span id="latest-size" class="metric-value white">Loading...</span>
</div>
<div class="stat-item">
<strong>DIFFICULTY:</strong>
<span id="latest-difficulty" class="metric-value yellow">Loading...</span>
</div>
<div class="stat-item">
<strong>POOL:</strong>
<span id="latest-pool" class="metric-value green">Loading...</span>
</div>
<div class="stat-item">
<strong>AVG FEE RATE:</strong>
<span id="latest-fee-rate" class="metric-value yellow" style="animation: pulse 1s infinite;">Loading...</span>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Blocks grid -->
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header">RECENT BLOCKS</div>
<div class="card-body">
<div class="blocks-container">
<div id="blocks-grid" class="blocks-grid">
<!-- Blocks will be generated here via JavaScript -->
<div class="loader">
<span class="loader-text">Connecting to mempool.guide API<span class="terminal-cursor"></span></span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Block details modal -->
<div id="block-modal" class="block-modal">
<div class="block-modal-content">
<div class="block-modal-header">
<span class="block-modal-title">BLOCK DETAILS</span>
<span class="block-modal-close">&times;</span>
</div>
<div class="block-modal-body">
<div id="block-details">
<!-- Block details will be displayed here -->
</div>
</div>
</div>
</div>
{% endblock %}
{% block javascript %}
<script src="/static/js/blocks.js"></script>
{% endblock %}