58576b22d6
-jQuery has been updated to v3.7.1 -Luxon has been updated to v3.4.3. Also updated the link to the documentation showing how to format dates in the settings.json.template and settings.js -Datatables has been updated to v1.13.6 -Font Awesome has been updated to v6.4.2 and all icons in the project have been updated to use the newest v6.x codes -OverlayScrollbars has been updated to v2.3.2 -flag-icons (previously called flag-icon-css) has been updated to v6.11.1 -Updated the main style.scss file with better color support for the new datatable loading animation color -Exor theme has been updated to v3.0.2 with a small fix to support the new datatable loading animation color
161 lines
9.3 KiB
Plaintext
161 lines
9.3 KiB
Plaintext
extends layout
|
|
|
|
block content
|
|
include ./includes/common.pug
|
|
script.
|
|
var setting_maxTxCount = parseInt("#{settings.api_page.public_apis.ext.getlasttxs.max_items_per_query}");
|
|
var setting_txPerPage = parseInt("#{settings.movement_page.movement_table.items_per_page}");
|
|
var lengthMenuOptsAdd = !{JSON.stringify(settings.movement_page.movement_table.page_length_options)};
|
|
var lengthMenuOpts = [];
|
|
var addedLength = false;
|
|
for (i = 0; i < lengthMenuOptsAdd.length; i++) {
|
|
if (setting_maxTxCount >= lengthMenuOptsAdd[i]) {
|
|
if (!addedLength) {
|
|
if (lengthMenuOptsAdd[i] > setting_txPerPage) {
|
|
lengthMenuOpts.push(setting_txPerPage);
|
|
addedLength = true;
|
|
}
|
|
}
|
|
|
|
lengthMenuOpts.push(lengthMenuOptsAdd[i]);
|
|
|
|
if (!addedLength) {
|
|
if (lengthMenuOptsAdd[i] > setting_txPerPage)
|
|
lengthMenuOpts.push(setting_txPerPage);
|
|
if (lengthMenuOptsAdd[i] == setting_txPerPage || lengthMenuOptsAdd[i] > setting_txPerPage)
|
|
addedLength = true;
|
|
}
|
|
}
|
|
}
|
|
if (!addedLength && setting_txPerPage <= setting_maxTxCount && setting_txPerPage != lengthMenuOpts[lengthMenuOpts.length - 1])
|
|
lengthMenuOpts.push(setting_txPerPage);
|
|
if (!addedLength && setting_txPerPage > setting_maxTxCount && setting_maxTxCount != lengthMenuOpts[lengthMenuOpts.length - 1])
|
|
lengthMenuOpts.push(setting_maxTxCount);
|
|
if (setting_maxTxCount < setting_txPerPage)
|
|
var displayLengthMax = setting_maxTxCount;
|
|
else
|
|
var displayLengthMax = setting_txPerPage;
|
|
$(document).ready(function() {
|
|
var rtable = $('#movement-table').dataTable({
|
|
autoWidth: true,
|
|
searching: false,
|
|
ordering: false,
|
|
lengthChange: true,
|
|
processing: true,
|
|
serverSide: true,
|
|
iDisplayLength: displayLengthMax,
|
|
lengthMenu: lengthMenuOpts,
|
|
scrollX: true,
|
|
ajax: {
|
|
url: '/ext/getlasttxs/#{settings.movement_page.movement_table.min_amount}',
|
|
beforeSend: function(jqXHR, settings) {
|
|
settings.url = settings.url.substring(0, settings.url.indexOf('?')) + '/' + getParameterByName('start', settings.url) + '/' + getParameterByName('length', settings.url) + '/internal';
|
|
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]; //variables for better readability
|
|
var amountParts = Number(amount).toLocaleString('en',{'minimumFractionDigits':2,'maximumFractionDigits':8,'useGrouping':true}).split('.');
|
|
var amountStr = amountParts[0] + '.<span class="decimal">' + amountParts[1] + '</span>';
|
|
var timestamp = data[5]; //variables for better readability
|
|
var total = "<label class='badge bg-" + (amount > '#{settings.movement_page.movement_table.high_warning_flag}' ? 'danger' : (amount > '#{settings.movement_page.movement_table.low_warning_flag}' ? 'warning' : 'success')) + "' style='margin-bottom:0;'>" + amountStr + "</label>";
|
|
$("td:eq(0)", row).html('<a href="/tx/' + txhash + '"><span class="fa-regular fa-eye" data-bs-toggle="tooltip" data-bs-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="/tx/' + txhash + '">' + txhash + '</a>').addClass('breakWord d-none d-md-table-cell');
|
|
$("td:eq(2)", row).html(total).addClass('text-center');
|
|
$("td:eq(3)", row).html('<span' + (#{settings.shared_pages.date_time.enable_alt_timezone_tooltips} == true ? ' data-bs-toggle="tooltip" data-bs-placement="auto" title="' + format_unixtime(timestamp, true) + '"' : '') + '>' + format_unixtime(timestamp) + '</span>').addClass('text-center');
|
|
},
|
|
fnDrawCallback: function(settings) {
|
|
fixDataTableColumns();
|
|
fixFooterHeightAndPosition();
|
|
enableTooltips();
|
|
}
|
|
});
|
|
|
|
function update_last_updated(lastUpdatedDate) {
|
|
if (lastUpdatedDate != 0) {
|
|
$('span#lastUpdatedDate').html(' ' + format_unixtime(lastUpdatedDate));
|
|
|
|
if (#{settings.shared_pages.date_time.enable_alt_timezone_tooltips} == true) {
|
|
$('span#lastUpdatedDate').attr('data-bs-toggle', 'tooltip').attr('data-bs-placement', 'auto').attr('title', format_unixtime(lastUpdatedDate, true)).attr('data-bs-original-title', format_unixtime(lastUpdatedDate, true));
|
|
enableTooltips();
|
|
}
|
|
} else
|
|
$('span#lastUpdatedDate').html(' N/A');
|
|
}
|
|
|
|
var setting_reload_table_seconds = parseInt("#{settings.movement_page.movement_table.reload_table_seconds}");
|
|
if (setting_reload_table_seconds > 0) {
|
|
setInterval(function () {
|
|
rtable.api().ajax.reload(null, false);
|
|
}, (setting_reload_table_seconds * 1000));
|
|
|
|
if ('#{settings.movement_page.page_header.show_last_updated}' == 'true') {
|
|
setInterval(function () {
|
|
$.ajax({url: '/ext/getlastupdated/movement', headers: { Accept: 'application/json, text/javascript, */*; q=0.01' }, success: function(json) {
|
|
if (json != null && json.last_updated_date != null)
|
|
update_last_updated(json.last_updated_date);
|
|
else
|
|
update_last_updated(0);
|
|
}});
|
|
}, (setting_reload_table_seconds * 1000));
|
|
}
|
|
}
|
|
|
|
if ('#{settings.movement_page.page_header.show_last_updated}' == 'true') {
|
|
var lastUpdatedDate = #{(last_updated == null || last_updated == '0' ? 0 : last_updated)};
|
|
update_last_updated(lastUpdatedDate);
|
|
}
|
|
if (#{settings.shared_pages.page_header.page_title_image.enable_animation} == true && #{settings.movement_page.page_header.show_img} == true)
|
|
startRotateElement('img#header-img');
|
|
});
|
|
.col-md-12
|
|
if settings.movement_page.page_header.show_img == true || settings.movement_page.page_header.show_title == true || settings.movement_page.page_header.show_last_updated == true || settings.movement_page.page_header.show_description == true
|
|
#page-header-container(style='align-items:' + (settings.movement_page.page_header.show_img == true && settings.movement_page.page_header.show_title == true && settings.movement_page.page_header.show_last_updated == true && settings.movement_page.page_header.show_description == true ? 'flex-start' : 'center'))
|
|
if settings.movement_page.page_header.show_img == true
|
|
#header-img-container
|
|
img#header-img(src=(settings.shared_pages.page_header.page_title_image == null || settings.shared_pages.page_header.page_title_image.image_path == null || settings.shared_pages.page_header.page_title_image.image_path == '' ? '/img/page-title-img.png' : settings.shared_pages.page_header.page_title_image.image_path))
|
|
#page-title-container
|
|
if settings.movement_page.page_header.show_title == true
|
|
h3#page-title #{settings.locale.move_title.replace('{1}', settings.coin.name)}
|
|
if settings.movement_page.page_header.show_last_updated == true
|
|
if settings.movement_page.page_header.show_title != true && settings.movement_page.page_header.show_description != true
|
|
#page-title-container
|
|
.sub-page-header
|
|
span.fw-bold=settings.locale.last_updated + ':'
|
|
span.text-muted#lastUpdatedDate
|
|
else
|
|
.sub-page-header(style='margin-bottom:' + (settings.movement_page.page_header.show_description == true ? '5' : '0') + 'px')
|
|
span.fw-bold=settings.locale.last_updated + ':'
|
|
span.text-muted#lastUpdatedDate
|
|
if settings.movement_page.page_header.show_description == true
|
|
if settings.movement_page.page_header.show_title != true && settings.movement_page.page_header.show_last_updated != true
|
|
#page-title-container
|
|
.sub-page-header.text-muted=settings.locale.move_description.replace('{1}', settings.movement_page.movement_table.min_amount).replace('{2}', settings.coin.name)
|
|
else
|
|
.sub-page-header.text-muted=settings.locale.move_description.replace('{1}', settings.movement_page.movement_table.min_amount).replace('{2}', settings.coin.name)
|
|
.cardSpacer.clearfix
|
|
.card.card-default.border-0.cardSpacer
|
|
.card-header
|
|
strong="Latest Movement"
|
|
table#movement-table.table.table-bordered.table-striped.table-paging.table-hover.mobile-border-right
|
|
- var theadClasses = [];
|
|
if settings.shared_pages.table_header_bgcolor != null && settings.shared_pages.table_header_bgcolor != ''
|
|
- theadClasses.push('table-' + settings.shared_pages.table_header_bgcolor);
|
|
thead
|
|
tr(class=theadClasses)
|
|
th.d-table-cell.d-md-none
|
|
th.d-none.d-md-table-cell #{settings.locale.tx_hash}
|
|
th.text-center #{settings.locale.mkt_amount}
|
|
span.small.fw-normal (#{settings.coin.symbol})
|
|
th.text-center #{settings.locale.timestamp}
|
|
tbody |