upgraded assets for webpanel, further enhancements and fixes regarding docker env

This commit is contained in:
crieke
2026-04-13 04:19:15 +02:00
parent c4548430a7
commit 3c017e9c68
91 changed files with 78899 additions and 40263 deletions

View File

@@ -24,9 +24,9 @@ include_once("/home/httpd/cgi-bin/qpkg/RoonServer/__functions.php");
<div class="container">
<div class="roon-template">
<h1><?php echo localize("OVERVIEW_HEADLINE"); ?></h1>
<!-- <h1><?php echo localize("OVERVIEW_HEADLINE"); ?></h1>
<p class="lead"><?php echo localize("OVERVIEW_TEXT1"); ?><br>
<?php echo localize("OVERVIEW_TEXT2"); ?></p>
<?php echo localize("OVERVIEW_TEXT2"); ?></p>-->
<div class="row">
<div class="col-sm-6">
<div class="card">
@@ -39,17 +39,17 @@ include_once("/home/httpd/cgi-bin/qpkg/RoonServer/__functions.php");
<p class="card-text">
<b><?php echo localize("OVERVIEW_ROONSERVER_PANEL_STATUS"); ?>
:</b> <?php if (strlen(isRunning()) > 1 ) {
echo '<span data-toggle="tooltip" title="' . localize("OVERVIEW_ROONSERVER_PANEL_CONTAINER_ID") .': ' . isRunning() . '" style="color: green;">' . localize("OVERVIEW_ROONSERVER_PANEL_STATUS_RUNNING") . '</span>';
echo '<span data-bs-toggle="tooltip" title="' . localize("OVERVIEW_ROONSERVER_PANEL_CONTAINER_ID") .': ' . isRunning() . '" style="color: green;">' . localize("OVERVIEW_ROONSERVER_PANEL_STATUS_RUNNING") . '</span>';
} else {
echo '<span style="color: red;">' . localize("OVERVIEW_ROONSERVER_PANEL_STATUS_STOPPED") . '</span>';
} ?><br>
<b><?php echo localize("OVERVIEW_ROONSERVER_PANEL_VERSION"); ?>
:</b> <?php echo $RoonVersion[1]; ?><br>
:</b> <?php echo getRoonServerVersion()[1]; ?><br>
<b><?php echo localize("OVERVIEW_ROONSERVER_PANEL_QPKG_VERSION"); ?>
:</b> <?php echo $qpkg_conf['RoonServer']['Version']; ?></span>
</p>
<h5><?php echo localize("OVERVIEW_ROONSERVER_PANEL_SUBHEAD_DATABASE"); ?></h5>
<span data-toggle="tooltip" title="<?php echo $dblocation; ?>">
<span data-bs-toggle="tooltip" title="<?php echo $dblocation; ?>">
<b><?php echo localize("OVERVIEW_ROONSERVER_PANEL_LOCATION"); ?>: </b><?php echo $dblocation; ?>
</span>
<div class="progress" style="height: 20px;">
@@ -58,52 +58,61 @@ include_once("/home/httpd/cgi-bin/qpkg/RoonServer/__functions.php");
<p>
<?php echo $db_perc . '% ' . localize("OVERVIEW_ROONSERVER_PANEL_SPACE_OF") . ' ' . displayStorage($db_vol_cap) . ' ' . localize("OVERVIEW_ROONSERVER_PANEL_SPACE_USED") . '.'; ?>
</p>
<span id="log" class="getModal">
<a href="#"
class="btn btn-light btn-icon float-left"
data-toggle="tooltip"
title="<?php echo localize("MODAL_LOGFILES_ICON_TOOLTIP"); ?>">
<i class="fas fa-ambulance"></i>
</a>
</span>
<span id="setStorage" class="getModal">
<a href="#"
class="btn btn-primary float-right"
data-toggle="tooltip"
title="<?php echo localize("OVERVIEW_ROONSERVER_PANEL_CHANGE_DB_LOCATION_TOOLTIP"); ?>">
<?php echo localize("OVERVIEW_ROONSERVER_PANEL_CHANGE_DB_LOCATION"); ?>
</a>
</span>
<div class="row">
<span id="log" class="col getModal d-flex justify-content-start">
<a href="#"
class="btn btn-light btn-icon float-left"
data-bs-toggle="tooltip"
title="<?php echo localize("MODAL_LOGFILES_ICON_TOOLTIP"); ?>">
<i class="fas fa-ambulance"></i>
</a>
</span>
<span id="setStorage" class="col-6 getModal float-right">
<a href="#"
class="btn btn-primary"
data-bs-toggle="tooltip"
title="<?php echo localize("OVERVIEW_ROONSERVER_PANEL_CHANGE_DB_LOCATION_TOOLTIP"); ?>">
<?php echo localize("OVERVIEW_ROONSERVER_PANEL_CHANGE_DB_LOCATION"); ?>
</a>
</span>
</div>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<!-- USB Audio -->
<div class="py-3 border-b border-surface-500/30">
<div class="flex items-start gap-3">
<label class="relative inline-flex items-center cursor-pointer mt-0.5 flex-shrink-0">
<input type="checkbox" id="opt-usb-audio" class="sr-only peer">
<div class="toggle-track"></div>
</label>
<div class="flex-1 min-w-0">
<label class="text-sm font-medium cursor-pointer" for="opt-usb-audio" data-toggle="tooltip" title="Pass through USB and ALSA devices for local audio output to a USB DAC connected to the host. Not needed if streaming to network endpoints.">USB audio (DAC)</label>
<span class="fa-stack fa-2x">
<i class="fa fa-circle fa-stack-2x" style="color: #222222;"></i>
<i class="fas fa-cog fa-stack-1x" style="color: #ffffff;"></i>
</span>
<h5>Settings</h5>
<div class=" d-grid gap-3 w-50">
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" role="switch" id="smb_cifs" onchange="changeSettings(this)">
<label class="form-check-label justify-content-start" for="flexSwitchCheckChecked">SMB/CIFS mount support</label>
</div>
</div>
</div>
<!-- HDMI Audio -->
<div class="py-3">
<div class="flex items-start gap-3">
<label class="relative inline-flex items-center cursor-pointer mt-0.5 flex-shrink-0">
<input type="checkbox" id="opt-hdmi-audio" class="sr-only peer">
<div class="toggle-track"></div>
</label>
<div class="flex-1 min-w-0">
<label class="text-sm font-medium cursor-pointer" for="opt-hdmi-audio" data-toggle="tooltip" title="Pass through GPU and ALSA devices for HDMI audio output. Requires GPU drivers on the host.">HDMI audio</label>
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" role="switch" id="usb_audio" onchange="changeSettings(this)">
<label class="form-check-label justify-content-start" for="flexSwitchCheckChecked">USB audio (DAC)</label>
</div>
</div>
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" role="switch" id="hdmi_audio" onchange="changeSettings(this)">
<label class="form-check-label justify-content-start text-left" for="flexSwitchCheckChecked">HDMI audio (DAC)</label>
</div>
</div>
<span id="saveOptions" class="getModal">
<a href="#"
class="btn btn-primary float-right"
data-bs-toggle="tooltip"
onclick="saveOptions()"
title="Save Options">
Save
</a>
</span>
</div>
</div>
</div>
@@ -120,7 +129,7 @@ include_once("/home/httpd/cgi-bin/qpkg/RoonServer/__functions.php");
// Enable Tooltips
$(function () {
$('[data-toggle="tooltip"]').tooltip()
document.querySelectorAll('[data-bs-toggle="tooltip"]')
});
// Action when button for Modal is clicked
@@ -128,10 +137,10 @@ include_once("/home/httpd/cgi-bin/qpkg/RoonServer/__functions.php");
// Hide Tooltips when modal opens
$(function () {
$('[data-toggle="tooltip"]').tooltip('dispose')
$('[data-bs-toggle="tooltip"]').tooltip('dispose')
});
// Check which button fired
// Check which button pressed
e.preventDefault();
var modalContent = $(this).attr('id');
$('#modal-content').load("modals.php?s=" + modalContent);
@@ -140,4 +149,44 @@ include_once("/home/httpd/cgi-bin/qpkg/RoonServer/__functions.php");
$('#modal').modal('show');
return false;
});
function changeSettings(el) {
console.log(el.id + ": " + el.checked);
}
$( document ).ready(function() {
var qpkg_options_str = "<?php echo $qpkg_conf_options ?>";
var qpkg_options_arr = qpkg_options_str.split(' ');
for (let conf_option of qpkg_options_arr) {
document.getElementById(conf_option).checked = true;
}
// document.getElementById('smb_cifs').checked = false;
// document.getElementById('usb_audio').checked = false;
// document.getElementById('hdmi_audio').checked = false;
});
// Function to download log files
function saveOptions () {
console.log('click');
var qnap_options = "";
qnap_options += document.getElementById('smb_cifs').checked ? "smb_cifs;" : "" ;
qnap_options += document.getElementById('usb_audio').checked ? "usb_audio;" : "" ;
qnap_options += document.getElementById('hdmi_audio').checked ? "hdmi_audio;" : "" ;
document.getElementById('smb_cifs').checked
var strUrl = '<?php echo NASHOST;?>/cgi-bin/qpkg/RoonServer/ajax/ajax.php?a=setOptions&o=' + qnap_options;
$.ajax({
url: strUrl,
dataType: 'json',
success: function (cb_data) {
console.log('success function...');
console.log('Debug Objects2: ' + cb_data.options );
}
});
}
</script>