Add Dynamic App setting for display on status page (show logs)
This commit is contained in:
parent
3d3c8b9fa0
commit
acfa819319
|
@ -14,17 +14,20 @@
|
||||||
{
|
{
|
||||||
"name": "Loop",
|
"name": "Loop",
|
||||||
"short_name": "loop",
|
"short_name": "loop",
|
||||||
"requires_lightning": true
|
"requires_lightning": true,
|
||||||
|
"show_on_status_page": true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Pool",
|
"name": "Pool",
|
||||||
"short_name": "pool",
|
"short_name": "pool",
|
||||||
"requires_lightning": true
|
"requires_lightning": true,
|
||||||
|
"show_on_status_page": true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Lightning Terminal",
|
"name": "Lightning Terminal",
|
||||||
"short_name": "lit",
|
"short_name": "lit",
|
||||||
"requires_lightning": true
|
"requires_lightning": true,
|
||||||
|
"show_on_status_page": true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Ride the Lightning",
|
"name": "Ride the Lightning",
|
||||||
|
@ -32,6 +35,7 @@
|
||||||
"app_tile_name": "RTL",
|
"app_tile_name": "RTL",
|
||||||
"app_tile_default_status_text": "Lightning Wallet",
|
"app_tile_default_status_text": "Lightning Wallet",
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"requires_lightning": true,
|
"requires_lightning": true,
|
||||||
"supports_testnet": true,
|
"supports_testnet": true,
|
||||||
|
@ -45,6 +49,7 @@
|
||||||
"app_tile_default_status_text": "",
|
"app_tile_default_status_text": "",
|
||||||
"app_tile_running_status_text": "Running",
|
"app_tile_running_status_text": "Running",
|
||||||
"can_reinstall": false,
|
"can_reinstall": false,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"supports_testnet": true,
|
"supports_testnet": true,
|
||||||
"homepage_order": 12
|
"homepage_order": 12
|
||||||
|
@ -75,6 +80,7 @@
|
||||||
"app_tile_default_status_text": "BlueWallet Backend",
|
"app_tile_default_status_text": "BlueWallet Backend",
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
"requires_lightning": true,
|
"requires_lightning": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"homepage_order": 15
|
"homepage_order": 15
|
||||||
},
|
},
|
||||||
|
@ -82,7 +88,8 @@
|
||||||
"name": "Corsproxy",
|
"name": "Corsproxy",
|
||||||
"short_name": "corsproxy",
|
"short_name": "corsproxy",
|
||||||
"can_enable_disable": false,
|
"can_enable_disable": false,
|
||||||
"show_on_application_page": false
|
"show_on_application_page": false,
|
||||||
|
"show_on_status_page": true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "LNDConnect",
|
"name": "LNDConnect",
|
||||||
|
@ -108,6 +115,7 @@
|
||||||
"app_tile_default_status_text": "BTC RPC Explorer",
|
"app_tile_default_status_text": "BTC RPC Explorer",
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
"requires_bitcoin": true,
|
"requires_bitcoin": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"supports_testnet": true,
|
"supports_testnet": true,
|
||||||
"requires_electrs": true,
|
"requires_electrs": true,
|
||||||
|
@ -164,6 +172,7 @@
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
"requires_lightning": true,
|
"requires_lightning": true,
|
||||||
"supports_testnet": true,
|
"supports_testnet": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"homepage_order": 25,
|
"homepage_order": 25,
|
||||||
"is_premium": true
|
"is_premium": true
|
||||||
|
@ -176,6 +185,7 @@
|
||||||
"app_tile_button_href": "/caravan",
|
"app_tile_button_href": "/caravan",
|
||||||
"app_tile_default_status_text": "Multisig Tool",
|
"app_tile_default_status_text": "Multisig Tool",
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"homepage_order": 31,
|
"homepage_order": 31,
|
||||||
"supports_testnet": true,
|
"supports_testnet": true,
|
||||||
|
@ -187,6 +197,7 @@
|
||||||
"requires_bitcoin": true,
|
"requires_bitcoin": true,
|
||||||
"app_tile_default_status_text": "Multisig Tool",
|
"app_tile_default_status_text": "Multisig Tool",
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"homepage_order": 32,
|
"homepage_order": 32,
|
||||||
"supports_testnet": true,
|
"supports_testnet": true,
|
||||||
|
@ -198,6 +209,7 @@
|
||||||
"requires_bitcoin": true,
|
"requires_bitcoin": true,
|
||||||
"app_tile_default_status_text": "Coldcard Signing Tool",
|
"app_tile_default_status_text": "Coldcard Signing Tool",
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"homepage_order": 33,
|
"homepage_order": 33,
|
||||||
"supports_testnet": true,
|
"supports_testnet": true,
|
||||||
|
@ -212,6 +224,7 @@
|
||||||
"app_tile_running_status_text": "Running",
|
"app_tile_running_status_text": "Running",
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
"requires_lightning": true,
|
"requires_lightning": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"homepage_order": 34,
|
"homepage_order": 34,
|
||||||
"is_premium": true
|
"is_premium": true
|
||||||
|
@ -221,6 +234,7 @@
|
||||||
"short_name": "lnbits",
|
"short_name": "lnbits",
|
||||||
"app_tile_default_status_text": "Lightning Wallet",
|
"app_tile_default_status_text": "Lightning Wallet",
|
||||||
"can_uninstall": true,
|
"can_uninstall": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
"homepage_order": 35,
|
"homepage_order": 35,
|
||||||
"requires_lightning": true,
|
"requires_lightning": true,
|
||||||
|
@ -272,6 +286,7 @@
|
||||||
{
|
{
|
||||||
"name": "Netdata",
|
"name": "Netdata",
|
||||||
"short_name": "netdata",
|
"short_name": "netdata",
|
||||||
|
"show_on_status_page": true,
|
||||||
"can_reinstall": false
|
"can_reinstall": false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -17,6 +17,7 @@
|
||||||
"can_enable_disable": true,
|
"can_enable_disable": true,
|
||||||
"show_on_application_page": true,
|
"show_on_application_page": true,
|
||||||
"show_on_homepage": true,
|
"show_on_homepage": true,
|
||||||
|
"show_on_status_page": true,
|
||||||
"port": 3000,
|
"port": 3000,
|
||||||
"homepage_order": 99
|
"homepage_order": 99
|
||||||
}
|
}
|
|
@ -139,6 +139,7 @@ def initialize_application_defaults(app):
|
||||||
if not "supports_testnet" in app: app["supports_testnet"] = False
|
if not "supports_testnet" in app: app["supports_testnet"] = False
|
||||||
if not "show_on_homepage" in app: app["show_on_homepage"] = False
|
if not "show_on_homepage" in app: app["show_on_homepage"] = False
|
||||||
if not "show_on_application_page" in app: app["show_on_application_page"] = True
|
if not "show_on_application_page" in app: app["show_on_application_page"] = True
|
||||||
|
if not "show_on_status_page" in app: app["show_on_status_page"] = False # New apps should set to true
|
||||||
if not "can_enable_disable" in app: app["can_enable_disable"] = True
|
if not "can_enable_disable" in app: app["can_enable_disable"] = True
|
||||||
if not "is_enabled" in app: app["is_enabled"] = is_service_enabled( app["short_name"] )
|
if not "is_enabled" in app: app["is_enabled"] = is_service_enabled( app["short_name"] )
|
||||||
#app["status"] = get_application_status( app["short_name"] )
|
#app["status"] = get_application_status( app["short_name"] )
|
||||||
|
|
|
@ -1298,7 +1298,7 @@ def get_sso_token(short_name):
|
||||||
elif short_name == "thunerhub":
|
elif short_name == "thunerhub":
|
||||||
token = get_file_contents("/opt/mynode/thunderhub/.cookie")
|
token = get_file_contents("/opt/mynode/thunderhub/.cookie")
|
||||||
else:
|
else:
|
||||||
token = "UNKOWN_APP"
|
token = "UNKNOWN_APP"
|
||||||
return to_string(token)
|
return to_string(token)
|
||||||
|
|
||||||
def get_sso_token_enabled(short_name):
|
def get_sso_token_enabled(short_name):
|
||||||
|
|
|
@ -91,6 +91,7 @@ def api_get_service_status():
|
||||||
|
|
||||||
# Try standard status API
|
# Try standard status API
|
||||||
data["status"] = get_application_status(service)
|
data["status"] = get_application_status(service)
|
||||||
|
data["status_basic"] = get_service_status_basic_text(service)
|
||||||
data["color"] = get_application_status_color(service)
|
data["color"] = get_application_status_color(service)
|
||||||
data["sso_token"] = get_application_sso_token(service)
|
data["sso_token"] = get_application_sso_token(service)
|
||||||
data["sso_token_enabled"] = get_application_sso_token_enabled(service)
|
data["sso_token_enabled"] = get_application_sso_token_enabled(service)
|
||||||
|
|
|
@ -205,6 +205,7 @@ def page_status():
|
||||||
"quicksync_status": quicksync_status,
|
"quicksync_status": quicksync_status,
|
||||||
"quicksync_status_color": quicksync_status_color,
|
"quicksync_status_color": quicksync_status_color,
|
||||||
"is_bitcoin_synced": is_bitcoin_synced(),
|
"is_bitcoin_synced": is_bitcoin_synced(),
|
||||||
|
"apps": get_all_applications(order_by="alphabetic"),
|
||||||
#"bitcoin_status_log": bitcoin_status_log,
|
#"bitcoin_status_log": bitcoin_status_log,
|
||||||
"bitcoin_status": get_service_status_basic_text("bitcoin"),
|
"bitcoin_status": get_service_status_basic_text("bitcoin"),
|
||||||
"bitcoin_status_color": get_service_status_color("bitcoin"),
|
"bitcoin_status_color": get_service_status_color("bitcoin"),
|
||||||
|
@ -286,6 +287,7 @@ def page_status():
|
||||||
#"ufw_status_log": get_journalctl_log("ufw"),
|
#"ufw_status_log": get_journalctl_log("ufw"),
|
||||||
"ufw_status": get_service_status_basic_text("ufw"),
|
"ufw_status": get_service_status_basic_text("ufw"),
|
||||||
"ufw_status_color": get_service_status_color("ufw"),
|
"ufw_status_color": get_service_status_color("ufw"),
|
||||||
|
"dynamic_app_names": get_dynamic_app_names(),
|
||||||
"firewall_rules": get_firewall_rules(),
|
"firewall_rules": get_firewall_rules(),
|
||||||
"is_quicksync_disabled": not quicksync_enabled,
|
"is_quicksync_disabled": not quicksync_enabled,
|
||||||
"netdata_enabled": is_service_enabled("netdata"),
|
"netdata_enabled": is_service_enabled("netdata"),
|
||||||
|
|
|
@ -5,29 +5,20 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
function showLog(name) {
|
function showLog(name) {
|
||||||
visible = $("#"+name+"_status").is(':visible');
|
visible = $("#"+name+"_log").is(':visible');
|
||||||
if (visible) {
|
if (visible) {
|
||||||
$("#show_"+name+"_status").html("Show Log");
|
$("#show_"+name+"_log").html("Show Log");
|
||||||
$("#"+name+"_status").hide();
|
$("#"+name+"_log").hide();
|
||||||
} else {
|
} else {
|
||||||
$("#show_"+name+"_status").html("Hide Log");
|
$("#show_"+name+"_log").html("Hide Log");
|
||||||
$.get( "/api/get_log?app="+name, function( data ) {
|
$.get( "/api/get_log?app="+name, function( data ) {
|
||||||
$("#"+name+"_status").html("<pre>"+data["log"]+"</pre>");
|
$("#"+name+"_log").html("<pre>"+data["log"]+"</pre>");
|
||||||
$("#"+name+"_status").show();
|
$("#"+name+"_log").show();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
$("#show_upgrade_status").on("click", function() {
|
|
||||||
$("#show_upgrade_status").hide(0);
|
|
||||||
$("#upgrade_status").show();
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#show_upgrade_status_beta").on("click", function() {
|
|
||||||
$("#show_upgrade_status_beta").hide(0);
|
|
||||||
$("#upgrade_status_beta").show();
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#show_product_key").on("click", function() {
|
$("#show_product_key").on("click", function() {
|
||||||
$("#show_product_key").hide(0);
|
$("#show_product_key").hide(0);
|
||||||
|
@ -60,6 +51,32 @@
|
||||||
url = location.protocol+'//'+location.hostname+':'+port+'/ssh/host/'+"{{local_ip}}";
|
url = location.protocol+'//'+location.hostname+':'+port+'/ssh/host/'+"{{local_ip}}";
|
||||||
window.open(url,'_blank');
|
window.open(url,'_blank');
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// Functions to update status and status color
|
||||||
|
function update_status_basic(status_name, data) {
|
||||||
|
if (data != null && "status" in data && data["status_basic"] != null) {
|
||||||
|
$("#"+status_name).html(data["status_basic"]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function update_status_icon(status_icon_name, data) {
|
||||||
|
if (data != null && "color" in data && data["color"] != null) {
|
||||||
|
$("#"+status_icon_name).removeClass("red");
|
||||||
|
$("#"+status_icon_name).removeClass("yellow");
|
||||||
|
$("#"+status_icon_name).removeClass("green");
|
||||||
|
$("#"+status_icon_name).removeClass("gray");
|
||||||
|
$("#"+status_icon_name).removeClass("blue");
|
||||||
|
$("#"+status_icon_name).removeClass("clear");
|
||||||
|
$("#"+status_icon_name).addClass(data["color"]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{% for app in apps %}
|
||||||
|
{% if app.show_on_status_page %}
|
||||||
|
$.getJSON("/api/get_service_status?service={{app.short_name}}", function( data ) {
|
||||||
|
update_status_basic("{{app.short_name}}_status", data);
|
||||||
|
update_status_icon("{{app.short_name}}_status_icon", data);
|
||||||
|
});
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
@ -106,8 +123,8 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ startup_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ startup_status_color }}"></div>
|
||||||
{{ startup_status }}
|
{{ startup_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_startup_status" onclick="showLog('startup')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_startup_log" onclick="showLog('startup')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="startup_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{startup_status_log}}</pre></div>
|
<div id="startup_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{startup_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
{% if is_quicksync_enabled %}
|
{% if is_quicksync_enabled %}
|
||||||
|
@ -116,8 +133,8 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ quicksync_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ quicksync_status_color }}"></div>
|
||||||
{{ quicksync_status }}
|
{{ quicksync_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_quicksync_status" onclick="showLog('quicksync')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_quicksync_log" onclick="showLog('quicksync')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="quicksync_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{quicksync_status_log}}</pre></div>
|
<div id="quicksync_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{quicksync_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
@ -126,8 +143,8 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ tor_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ tor_status_color }}"></div>
|
||||||
{{ tor_status }}
|
{{ tor_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_tor_status" onclick="showLog('tor')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_tor_log" onclick="showLog('tor')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="tor_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{tor_status_log}}</pre></div>
|
<div id="tor_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{tor_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
<div class="settings_block_subheader">Bitcoin Status</div>
|
<div class="settings_block_subheader">Bitcoin Status</div>
|
||||||
|
@ -135,8 +152,8 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ bitcoin_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ bitcoin_status_color }}"></div>
|
||||||
{{ bitcoin_status }}
|
{{ bitcoin_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_bitcoin_status" onclick="showLog('bitcoin')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_bitcoin_log" onclick="showLog('bitcoin')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="bitcoin_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{bitcoin_status_log}}</pre></div>
|
<div id="bitcoin_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{bitcoin_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
{% if is_bitcoin_synced %}
|
{% if is_bitcoin_synced %}
|
||||||
|
@ -146,122 +163,49 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ lnd_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ lnd_status_color }}"></div>
|
||||||
{{ lnd_status }}
|
{{ lnd_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_lnd_status" onclick="showLog('lnd')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_lnd_log" onclick="showLog('lnd')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="lnd_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{lnd_status_log}}</pre></div>
|
<div id="lnd_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{lnd_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
{% if lnd_wallet_exists and lnd_ready %}
|
{% for app in apps %}
|
||||||
<div class="settings_block_subheader">Loop Status</div>
|
{% if app.show_on_status_page %}
|
||||||
<div class="settings_block_subheader_status">
|
{% set display = 1 %}
|
||||||
<div class="settings_block_subheader_status_icon {{ loop_status_color }}"></div>
|
|
||||||
{{ loop_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_loop_status" onclick="showLog('loop')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="loop_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{loop_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if lnd_wallet_exists and lnd_ready %}
|
{% if app.requires_bitcoin and not is_bitcoin_synced %}
|
||||||
<div class="settings_block_subheader">Pool Status</div>
|
{% set display = 0 %}
|
||||||
<div class="settings_block_subheader_status">
|
{% endif %}
|
||||||
<div class="settings_block_subheader_status_icon {{ pool_status_color }}"></div>
|
{% if app.requires_lightning %}
|
||||||
{{ pool_status }}
|
{% set display = 0 %}
|
||||||
</div>
|
{% if lnd_wallet_exists and lnd_ready %}
|
||||||
<button id="show_pool_status" onclick="showLog('pool')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
{% set display = 1 %}
|
||||||
<div id="pool_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{pool_status_log}}</pre></div>
|
{% endif %}
|
||||||
<div class="divider"></div>
|
{% endif %}
|
||||||
{% endif %}
|
{% if not app.is_enabled %}
|
||||||
|
{% set display = 0 %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% if lnd_wallet_exists and lnd_ready %}
|
|
||||||
<div class="settings_block_subheader">Lightning Terminal Status</div>
|
{% if display %}
|
||||||
<div class="settings_block_subheader_status">
|
<div class="settings_block_subheader">{{app.name}} Status</div>
|
||||||
<div class="settings_block_subheader_status_icon {{ lit_status_color }}"></div>
|
<div class="settings_block_subheader_status">
|
||||||
{{ lit_status }}
|
<div id="{{app.short_name}}_status_icon" class="settings_block_subheader_status_icon clear"></div>
|
||||||
</div>
|
<span id="{{app.short_name}}_status">Loading....</span>
|
||||||
<button id="show_lit_status" onclick="showLog('lit')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
</div>
|
||||||
<div id="lit_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{lit_status_log}}</pre></div>
|
<button id="show_{{app.short_name}}_log" onclick="showLog('{{app.short_name}}')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div class="divider"></div>
|
<div id="{{app.short_name}}_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>Loading...</pre></div>
|
||||||
{% endif %}
|
<div class="divider"></div>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
<div class="settings_block_subheader">Electrum Server Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ electrs_status_color }}"></div>
|
|
||||||
{{ electrs_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_electrs_status" onclick="showLog('electrs')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="electrs_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{electrs_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
|
|
||||||
{% if lnd_wallet_exists and lnd_ready %}
|
|
||||||
<div class="settings_block_subheader">LNDHub Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ lndhub_status_color }}"></div>
|
|
||||||
{{ lndhub_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_lndhub_status" onclick="showLog('lndhub')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="lndhub_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{lndhub_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if lnd_wallet_exists and lnd_ready %}
|
|
||||||
<div class="settings_block_subheader">RTL Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ rtl_status_color }}"></div>
|
|
||||||
{{ rtl_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_rtl_status" onclick="showLog('rtl')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="rtl_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{rtl_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if lnd_wallet_exists and lnd_ready %}
|
|
||||||
<div class="settings_block_subheader">LNbits Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ lnbits_status_color }}"></div>
|
|
||||||
{{ lnbits_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_lnbits_status" onclick="showLog('lnbits')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="lnbits_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{lnbits_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if lnd_wallet_exists and lnd_ready %}
|
|
||||||
<div class="settings_block_subheader">Thunderhub Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ thunderhub_status_color }}"></div>
|
|
||||||
{{ thunderhub_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_thunderhub_status" onclick="showLog('thunderhub')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="thunderhub_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{thunderhub_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<div class="settings_block_subheader">Docker Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ docker_status_color }}"></div>
|
|
||||||
{{ docker_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_docker_status" onclick="showLog('docker')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="docker_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{docker_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
|
|
||||||
<div class="settings_block_subheader">Docker Image Build Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ docker_image_build_status_color }}"></div>
|
|
||||||
{{ docker_image_build_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_docker_image_build_status" onclick="showLog('docker_image_build')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="docker_image_build_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{docker_image_build_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
|
|
||||||
{% if not ui_settings['reseller'] %}
|
|
||||||
<div class="settings_block_subheader">Whirlpool Status</div>
|
<div class="settings_block_subheader">Whirlpool Status</div>
|
||||||
<div class="settings_block_subheader_status">
|
<div class="settings_block_subheader_status">
|
||||||
<div class="settings_block_subheader_status_icon {{ whirlpool_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ whirlpool_status_color }}"></div>
|
||||||
{{ whirlpool_status }}
|
{{ whirlpool_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_whirlpool_status" onclick="showLog('whirlpool')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_whirlpool_log" onclick="showLog('whirlpool')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="whirlpool_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{whirlpool_status_log}}</pre></div>
|
<div id="whirlpool_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{whirlpool_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
<div class="settings_block_subheader">Dojo Status</div>
|
<div class="settings_block_subheader">Dojo Status</div>
|
||||||
|
@ -276,10 +220,9 @@
|
||||||
{% if 'nginx' in running_containers %} nginx {% endif %}
|
{% if 'nginx' in running_containers %} nginx {% endif %}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<button id="show_dojo_status" onclick="showLog('dojo')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_dojo_log" onclick="showLog('dojo')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="dojo_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{dojo_status_log}}</pre></div>
|
<div id="dojo_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{dojo_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<div class="settings_block_subheader">BTCPay Server Status</div>
|
<div class="settings_block_subheader">BTCPay Server Status</div>
|
||||||
<div class="settings_block_subheader_status">
|
<div class="settings_block_subheader_status">
|
||||||
|
@ -292,8 +235,8 @@
|
||||||
{% if 'generated_postgres_1' in running_containers %} postgres {% endif %}
|
{% if 'generated_postgres_1' in running_containers %} postgres {% endif %}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<button id="show_btcpayserver_status" onclick="showLog('btcpayserver')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_btcpayserver_log" onclick="showLog('btcpayserver')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="btcpayserver_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{btcpayserver_status_log}}</pre></div>
|
<div id="btcpayserver_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{btcpayserver_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
<div class="settings_block_subheader">Mempool Status</div>
|
<div class="settings_block_subheader">Mempool Status</div>
|
||||||
|
@ -307,59 +250,28 @@
|
||||||
{% if 'mempool_api_1' in running_containers %} mempool_api_1 {% endif %}
|
{% if 'mempool_api_1' in running_containers %} mempool_api_1 {% endif %}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<button id="show_mempool_status" onclick="showLog('mempool')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_mempool_log" onclick="showLog('mempool')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="mempool_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{mempool_status_log}}</pre></div>
|
<div id="mempool_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{mempool_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
<div class="settings_block_subheader">Caravan Status</div>
|
<div class="settings_block_subheader">Docker Status</div>
|
||||||
<div class="settings_block_subheader_status">
|
<div class="settings_block_subheader_status">
|
||||||
<div class="settings_block_subheader_status_icon {{ caravan_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ docker_status_color }}"></div>
|
||||||
{{ caravan_status }}
|
{{ docker_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_caravan_status" onclick="showLog('caravan')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_docker_log" onclick="showLog('docker')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="caravan_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{caravan_status_log}}</pre></div>
|
<div id="docker_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{docker_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
<div class="settings_block_subheader">CKBunker Status</div>
|
<div class="settings_block_subheader">Docker Image Build Status</div>
|
||||||
<div class="settings_block_subheader_status">
|
<div class="settings_block_subheader_status">
|
||||||
<div class="settings_block_subheader_status_icon {{ ckbunker_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ docker_image_build_status_color }}"></div>
|
||||||
{{ ckbunker_status }}
|
{{ docker_image_build_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_ckbunker_status" onclick="showLog('ckbunker')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_docker_image_build_log" onclick="showLog('docker_image_build')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="ckbunker_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{ckbunker_status_log}}</pre></div>
|
<div id="docker_image_build_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{docker_image_build_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
<div class="settings_block_subheader">Specter Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ specter_status_color }}"></div>
|
|
||||||
{{ specter_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_specter_status" onclick="showLog('specter')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="specter_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{specter_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
|
|
||||||
{% if lnd_wallet_exists and lnd_ready %}
|
|
||||||
<div class="settings_block_subheader">Sphinx Relay Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ sphinxrelay_status_color }}"></div>
|
|
||||||
{{ sphinxrelay_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_sphinxrelay_status" onclick="showLog('sphinxrelay')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="sphinxrelay_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{sphinxrelay_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if netdata_enabled %}
|
|
||||||
<div class="settings_block_subheader">Netdata Status</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ netdata_status_color }}"></div>
|
|
||||||
{{ netdata_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_netdata_status" onclick="showLog('netdata')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="netdata_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{netdata_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<div class="settings_block_subheader">NGINX Status</div>
|
<div class="settings_block_subheader">NGINX Status</div>
|
||||||
|
@ -367,8 +279,8 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ nginx_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ nginx_status_color }}"></div>
|
||||||
{{ nginx_status }}
|
{{ nginx_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_nginx_status" onclick="showLog('nginx')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_nginx_log" onclick="showLog('nginx')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="nginx_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{nginx_status_log}}</pre></div>
|
<div id="nginx_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{nginx_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
{% if is_bitcoin_synced %}
|
{% if is_bitcoin_synced %}
|
||||||
|
@ -377,19 +289,8 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ usb_extras_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ usb_extras_status_color }}"></div>
|
||||||
{{ usb_extras_status }}
|
{{ usb_extras_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_usb_extras_status" onclick="showLog('usb_extras')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_usb_extras_log" onclick="showLog('usb_extras')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="usb_extras_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{usb_extras_status_log}}</pre></div>
|
<div id="usb_extras_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{usb_extras_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if is_bitcoin_synced %}
|
|
||||||
<div class="settings_block_subheader">CORS Proxy</div>
|
|
||||||
<div class="settings_block_subheader_status">
|
|
||||||
<div class="settings_block_subheader_status_icon {{ corsproxy_status_color }}"></div>
|
|
||||||
{{ corsproxy_status }}
|
|
||||||
</div>
|
|
||||||
<button id="show_corsproxy_status" onclick="showLog('corsproxy')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
|
||||||
<div id="corsproxy_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{corsproxy_status_log}}</pre></div>
|
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
@ -398,8 +299,8 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ www_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ www_status_color }}"></div>
|
||||||
{{ www_status }}
|
{{ www_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_www_status" onclick="showLog('www')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_www_log" onclick="showLog('www')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="www_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{www_status_log}}</pre></div>
|
<div id="www_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{www_status_log}}</pre></div>
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
|
|
||||||
<div class="settings_block_subheader">Firewall Status</div>
|
<div class="settings_block_subheader">Firewall Status</div>
|
||||||
|
@ -407,8 +308,8 @@
|
||||||
<div class="settings_block_subheader_status_icon {{ ufw_status_color }}"></div>
|
<div class="settings_block_subheader_status_icon {{ ufw_status_color }}"></div>
|
||||||
{{ ufw_status }}
|
{{ ufw_status }}
|
||||||
</div>
|
</div>
|
||||||
<button id="show_ufw_status" onclick="showLog('ufw')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
<button id="show_ufw_log" onclick="showLog('ufw')" class="ui-button ui-widget ui-corner-all settings_button_small">Show Log</button>
|
||||||
<div id="ufw_status" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{ufw_status_log}}</pre></div>
|
<div id="ufw_log" style='text-align: left; font-size: 12px; width: 800px; display: none;'><pre>{{ufw_status_log}}</pre></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user