New settings for viewing special address pages

-Add new address_page.enable_hidden_address_view setting which controls whether the special hidden_address address page can be viewed
-Add new address_page.enable_unknown_address_view setting which controls whether the special unknown_address address page can be viewed
-route to special coinbase address is permanently disabled
This commit is contained in:
joeuhren
2021-03-22 18:45:47 -06:00
parent 1392280575
commit a7d1ae8d0c
5 changed files with 113 additions and 74 deletions
+8
View File
@@ -282,6 +282,14 @@ exports.transaction_page = {
exports.address_page = {
// show_sent_received: Determine whether to show Total Sent and Total Received columns at the top of the address page
"show_sent_received": false,
// enable_hidden_address_view: Determine whether to allow viewing the special 'hidden_address' wallet address which is populated anytime a private/hidden wallet address is involved in a transaction
// NOTE: Enabling this option will add hyperlinks to all Hidden Addresses and allow viewing of the /address/hidden_address page
// Disabling this option will display all Hidden Addresses in plain-text without a hyperlink and visiting the /address/hidden_address page will result in a 404 error
"enable_hidden_address_view": false,
// enable_unknown_address_view: Determine whether to allow viewing the special 'unknown_address' wallet address which is populated anytime a wallet address cannot be deciphered
// NOTE: Enabling this option will add hyperlinks to all Unknown Addresses and allow viewing of the /address/unknown_address page
// Disabling this option will display all Unknown Addresses in plain-text without a hyperlink and visiting the /address/unknown_address page will result in a 404 error
"enable_unknown_address_view": false,
// history_table: a collection of settings that pertain to the history table on the address page
// Table data is populated via the /ext/getaddresstxs api
"history_table": {
+11 -6
View File
@@ -178,12 +178,17 @@ function route_get_index(res, error) {
}
function route_get_address(res, hash) {
db.get_address(hash, false, function(address) {
if (address)
res.render('address', { active: 'address', address: address, showSync: db.check_show_sync_message()});
else
route_get_index(res, hash + ' not found');
});
// check if trying to load a special address
if (hash != null && hash.toLowerCase() != 'coinbase' && ((hash.toLowerCase() == 'hidden_address' && settings.address_page.enable_hidden_address_view == true) || (hash.toLowerCase() == 'unknown_address' && settings.address_page.enable_unknown_address_view == true) || (hash.toLowerCase() != 'hidden_address' && hash.toLowerCase() != 'unknown_address'))) {
// lookup address in local collection
db.get_address(hash, false, function(address) {
if (address)
res.render('address', { active: 'address', address: address, showSync: db.check_show_sync_message()});
else
route_get_index(res, hash + ' not found');
});
} else
route_get_index(res, hash + ' not found');
}
function route_get_claim_form(res, hash) {
+8
View File
@@ -366,6 +366,14 @@
"address_page": {
// show_sent_received: Determine whether to show Total Sent and Total Received columns at the top of the address page
"show_sent_received": false,
// enable_hidden_address_view: Determine whether to allow viewing the special 'hidden_address' wallet address which is populated anytime a private/hidden wallet address is involved in a transaction
// NOTE: Enabling this option will add hyperlinks to all Hidden Addresses and allow viewing of the /address/hidden_address page
// Disabling this option will display all Hidden Addresses in plain-text without a hyperlink and visiting the /address/hidden_address page will result in a 404 error
"enable_hidden_address_view": false,
// enable_unknown_address_view: Determine whether to allow viewing the special 'unknown_address' wallet address which is populated anytime a wallet address cannot be deciphered
// NOTE: Enabling this option will add hyperlinks to all Unknown Addresses and allow viewing of the /address/unknown_address page
// Disabling this option will display all Unknown Addresses in plain-text without a hyperlink and visiting the /address/unknown_address page will result in a 404 error
"enable_unknown_address_view": false,
// history_table: a collection of settings that pertain to the history table on the address page
// Table data is populated via the /ext/getaddresstxs api
"history_table": {
+56 -62
View File
@@ -113,73 +113,67 @@ block content
- var sentParts = sent.split('.');
- var received = Number(address.received / 100000000).toLocaleString('en',{'minimumFractionDigits':2,'maximumFractionDigits':8,'useGrouping':true});
- var receivedParts = received.split('.');
if address.a_id !== 'coinbase' || settings.address_page.show_sent_received == true
script.
$(document).ready(function() {
$('.summary-table').dataTable({
info: false,
paging: false,
searching: false,
ordering: false,
responsive: true,
scrollX: true,
fnDrawCallback: function(settings) {
fixDataTableColumns();
}
})
});
script.
$(document).ready(function() {
$('.summary-table').dataTable({
info: false,
paging: false,
searching: false,
ordering: false,
responsive: true,
scrollX: true,
fnDrawCallback: function(settings) {
fixDataTableColumns();
}
})
});
- var theadClasses = [];
if settings.shared_pages.table_header_bgcolor != null && settings.shared_pages.table_header_bgcolor != ''
- theadClasses.push('thead-' + settings.shared_pages.table_header_bgcolor);
.col-xs-12.col-md-12
if address.a_id !== 'coinbase' || settings.address_page.show_sent_received == true
.card.card-default.border-0.card-address-summary.cardSpacer
.card-header(style='position:relative;')
if settings.claim_address_page.enabled == false || address.name == null || address.name == ''
if address.a_id == 'hidden_address'
strong #{settings.locale.hidden_address}
else if address.a_id == 'unknown_address'
strong #{settings.locale.unknown_address}
else
strong #{address.a_id}
.card.card-default.border-0.card-address-summary.cardSpacer
.card-header(style='position:relative;')
if settings.claim_address_page.enabled == false || address.name == null || address.name == ''
if address.a_id == 'hidden_address'
strong #{settings.locale.hidden_address}
else if address.a_id == 'unknown_address'
strong #{settings.locale.unknown_address}
else
strong #{address.name}
| ​
include ./includes/rl_labels.pug
if (!settings.labels[address.a_id] || !settings.labels[address.a_id].enabled) && settings.claim_address_page.enabled == true
a.badge.badge-pill.float-right.d-none.d-sm-block(href='/claim/' + address.a_id, style='font-size:smaller;padding-bottom:0;')
if address.name == null || address.name == ''
=" Is this yours? Claim it now for free!"
else
=" Update claimed address"
table.table.table-bordered.table-striped.summary-table.mobile-border-right(style='border-top:0;margin-top:0 !important;')
thead(class=theadClasses)
tr
if address.a_id !== 'coinbase'
th.text-center #{settings.locale.rl_balance}
span.small (#{settings.coin.symbol})
if settings.address_page.show_sent_received == true
th.text-center #{settings.locale.total_sent}
span.small (#{settings.coin.symbol})
if address.a_id !== 'coinbase' && settings.address_page.show_sent_received == true
th.text-center #{settings.locale.total_received}
span.small (#{settings.coin.symbol})
if address.a_id !== 'coinbase'
th.text-center #{settings.locale.a_qr}
tbody
tr
if address.a_id !== 'coinbase'
td.text-center.addr-summary #{balanceParts[0]}.
span.decimal #{balanceParts[1]}
if settings.address_page.show_sent_received == true
td.text-center.addr-summary #{sentParts[0]}.
span.decimal #{sentParts[1]}
if address.a_id !== 'coinbase' && settings.address_page.show_sent_received == true
td.text-center.addr-summary #{receivedParts[0]}.
span.decimal #{receivedParts[1]}
if address.a_id !== 'coinbase'
td.text-center.addr-summary
img.qrcode(src='/qr/' + address.a_id)
strong #{address.a_id}
else
strong #{address.name}
| ​
include ./includes/rl_labels.pug
if (!settings.labels[address.a_id] || !settings.labels[address.a_id].enabled) && settings.claim_address_page.enabled == true
a.badge.badge-pill.float-right.d-none.d-sm-block(href='/claim/' + address.a_id, style='font-size:smaller;padding-bottom:0;')
if address.name == null || address.name == ''
=" Is this yours? Claim it now for free!"
else
=" Update claimed address"
table.table.table-bordered.table-striped.summary-table.mobile-border-right(style='border-top:0;margin-top:0 !important;')
thead(class=theadClasses)
tr
th.text-center #{settings.locale.rl_balance}
span.small (#{settings.coin.symbol})
if settings.address_page.show_sent_received == true
th.text-center #{settings.locale.total_sent}
span.small (#{settings.coin.symbol})
if settings.address_page.show_sent_received == true
th.text-center #{settings.locale.total_received}
span.small (#{settings.coin.symbol})
th.text-center #{settings.locale.a_qr}
tbody
tr
td.text-center.addr-summary #{balanceParts[0]}.
span.decimal #{balanceParts[1]}
if settings.address_page.show_sent_received == true
td.text-center.addr-summary #{sentParts[0]}.
span.decimal #{sentParts[1]}
if settings.address_page.show_sent_received == true
td.text-center.addr-summary #{receivedParts[0]}.
span.decimal #{receivedParts[1]}
td.text-center.addr-summary
img.qrcode(src='/qr/' + address.a_id)
.card.card-default.border-0.cardSpacer
.card-header
strong #{settings.locale.ex_latest_transactions}
+30 -6
View File
@@ -87,9 +87,17 @@ block content
=address.claim_name
include ./includes/rl_labels.pug
else if address.addresses == 'hidden_address'
=settings.locale.hidden_sender
if settings.address_page.enable_hidden_address_view == true
a.loading.breakWord(href='/address/hidden_address')
=settings.locale.hidden_sender
else
=settings.locale.hidden_sender
else
=settings.locale.unknown_sender
if settings.address_page.enable_unknown_address_view == true
a.loading.breakWord(href='/address/unknown_address')
=settings.locale.unknown_sender
else
=settings.locale.unknown_sender
td.bg-danger.text-center #{ramountParts[0]}.
span.decimal #{ramountParts[1]}
else
@@ -124,17 +132,33 @@ block content
else if address.amount > 0
td
if address.addresses == 'hidden_address'
=settings.locale.hidden_recipient
if settings.address_page.enable_hidden_address_view == true
a.loading.breakWord(href='/address/hidden_address')
=settings.locale.hidden_recipient
else
=settings.locale.hidden_recipient
else
=settings.locale.unknown_recipient
if settings.address_page.enable_unknown_address_view == true
a.loading.breakWord(href='/address/unknown_address')
=settings.locale.unknown_recipient
else
=settings.locale.unknown_recipient
td.bg-success.text-center #{ramountParts[0]}.
span.decimal #{ramountParts[1]}
else
td(colspan='2')
if address.addresses == 'hidden_address'
=settings.locale.hidden_recipient
if settings.address_page.enable_hidden_address_view == true
a.loading.breakWord(href='/address/hidden_address')
=settings.locale.hidden_recipient
else
=settings.locale.hidden_recipient
else
=settings.locale.unknown_recipient
if settings.address_page.enable_unknown_address_view == true
a.loading.breakWord(href='/address/unknown_address')
=settings.locale.unknown_recipient
else
=settings.locale.unknown_recipient
else
- var ramount = Number(address.amount / 100000000).toLocaleString('en',{'minimumFractionDigits':2,'maximumFractionDigits':8,'useGrouping':true});
- var ramountParts = ramount.split('.');