Files
purple-explorer/views/index.pug
T
joeuhren 3af996eeda More layout and mobile fixes
-Table columns are no longer being hidden on mobile/tablet views. Instead, clickable columns with long data (such as hashes) are now reduced to an eye icon on mobile and smaller tablets to save space. In the event that text still doesn't fit in the viewport, applicable tables now allow horizontal scrolling to reveal the rest of the data
-Many table columns had their horizontal alignment updated to better match the type of data being displayed
-Moved some table columns around to be more consistent across all pages
-Applied some additional small tweaks and fixes to provide a better overall user experience
2020-12-25 15:01:03 -07:00

96 lines
4.3 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
extends layout
block content
include ./includes/common.pug
script.
var setting_maxTxCount = parseInt("#{settings.index.last_txs}");
var setting_txPerPage = parseInt("#{settings.index.txs_per_page}");
var lengthMenuOpts = [];
var lengthMenuOptsAdd = [ 10, 25, 50, 75, 100, 250, 500, 1000 ];
for (i=0; i < lengthMenuOptsAdd.length; i++) {
if (setting_maxTxCount >= lengthMenuOptsAdd[i]) {
lengthMenuOpts.push(lengthMenuOptsAdd[i]);
}
}
if (setting_maxTxCount < setting_txPerPage) {
var displayLengthMax = setting_maxTxCount;
} else {
var displayLengthMax = setting_txPerPage;
}
$(document).ready(function() {
var rtable = $('#recent-table').dataTable({
autoWidth: false,
searching: false,
ordering: false,
responsive: false,
lengthChange: true,
processing: true,
serverSide: true,
iDisplayLength: displayLengthMax,
lengthMenu: lengthMenuOpts,
scrollX: true,
ajax: {
url: '/ext/getlasttxs/0',
beforeSend: function(jqXHR, settings) {
settings.url = settings.url.substring(0, settings.url.indexOf('?')) + '/' + getParameterByName('start', settings.url) + '/' + getParameterByName('length', settings.url);
return true;
}
},
language: {
paginate: {
previous: '<',
next: '>'
}
},
rowCallback: function(row, data, index) {
var blockindex = data[0]; //variables for better readability
var blockhash = data[1]; //variables for better readability
var txhash = data[2]; //variables for better readability
var outputs = data[3]; //variables for better readability
var amount = (data[4] / 100000000).toLocaleString('en',{'minimumFractionDigits':2,'maximumFractionDigits':8,'useGrouping':true}); //variables for better readability
var amountParts = amount.split('.');
var amount = amountParts[0] + '.<span class="decimal">' + amountParts[1] + '</span>';
var timestamp = data[5];
$("td:eq(0)", row).html('<a href="/tx/' + txhash + '"><span class="fa fa-eye" data-toggle="tooltip" data-placement="top" title="#{settings.locale.view_tx}"></span></a>').addClass('text-center d-table-cell d-md-none');
$("td:eq(1)", row).html('<a href="/block/' + blockhash + '">' + blockindex + '</a>');
$("td:eq(2)", row).html('<a href="/tx/' + txhash + '">' + txhash + '</a>').addClass("text-center breakWord d-none d-md-table-cell");
$("td:eq(3)", row).html(outputs).addClass("text-center d-none d-sm-table-cell");
$("td:eq(4)", row).html(amount);
$("td:eq(5)", row).html(format_unixtime(new Date(timestamp), true)).addClass("text-center");
},
fnDrawCallback: function(settings) {
fixDataTableColumns();
fixFooterHeightAndPosition();
enableTooltips();
}
});
setInterval( function () {
rtable.api().ajax.reload(null, false);
}, 60000 );
});
if error !== null
.col-12
.alert.alert-danger.alert-dismissable(role='alert')
button.close(type='button', data-dismiss='alert') ×
.cardSpacer
span.fas.fa-exclamation-circle(style='margin-right:5px')
strong #{settings.locale.ex_error}
div #{error}
.col-md-12.cardSpacer
.card.card-default.border-0.cardSpacer
.card-header
strong #{settings.locale.ex_latest_transactions}
table#recent-table.table.table-bordered.table-striped.table-paging
- var theadClasses = [];
if settings.display.table_header_bgcolor != null && settings.display.table_header_bgcolor != ''
- theadClasses.push('thead-' + settings.display.table_header_bgcolor);
thead(class=theadClasses)
tr
th.d-table-cell.d-md-none
th.text-center #{settings.locale.ex_block}
th.text-center.d-none.d-md-table-cell #{settings.locale.tx_hash}
th.text-center.d-none.d-sm-table-cell #{settings.locale.tx_recipients}
th.text-center #{settings.locale.mkt_amount}
span.small (#{settings.symbol})
th.text-center #{settings.locale.timestamp}
tbody.text-center