- Fixed UI bug in loopback options toggle
- Optimized plugin select ui
This commit is contained in:
Toby Chui
2025-09-06 13:36:00 +08:00
parent df55157221
commit dbd795a158
3 changed files with 22 additions and 7 deletions

View File

@@ -566,11 +566,12 @@ func handleWhitelistAllowLoopback(w http.ResponseWriter, r *http.Request) {
js, _ := json.Marshal(currentEnabled)
utils.SendJSONResponse(w, string(js))
} else {
if enable == "true" {
switch enable {
case "true":
rule.ToggleAllowLoopback(true)
} else if enable == "false" {
case "false":
rule.ToggleAllowLoopback(false)
} else {
default:
utils.SendErrorResponse(w, "invalid enable state: only true and false is accepted")
return
}

View File

@@ -1059,7 +1059,7 @@
})
});
$.get("/api/whitelist/allowLocal", function(data){
$.get("/api/whitelist/allowLocal?id=" + currentEditingAccessRule, function(data){
if (data == true){
$('#enableWhitelistLoopback').parent().checkbox("set checked");
}else{
@@ -1080,7 +1080,19 @@
url: '/api/whitelist/allowLocal',
data: { enable: isChecked, id: currentEditingAccessRule},
success: function(data){
msgbox("Loopback whitelist " + (isChecked ? "enabled" : "disabled"), true);
if (data.error != undefined){
msgbox("Failed to update loopback whitelist: " + data.error, false);
//Revert the checkbox state
if (isChecked){
$('#enableWhitelistLoopback').parent().checkbox("set unchecked");
}else{
$('#enableWhitelistLoopback').parent().checkbox("set checked");
}
return;
}else{
msgbox("Loopback whitelist " + (isChecked ? "enabled" : "disabled"), true);
}
}
});
}

View File

@@ -120,7 +120,7 @@
<div class="selectColTitle">Unassigned Plugins</div>
<div id="selectablePluginList" class="ui relaxed divided list" style="border: 1px solid var(--divider_color);">
<div class="item" style="pointer-events: none; user-select: none; opacity: 0.6;">
<i class="ui arrow up icon"></i> Select a tag to view available plugins
<i class="ui green check circle icon"></i> No selected tag
</div>
</div>
</div>
@@ -314,7 +314,9 @@ loadTags();
//This is used as a dummy function to initialize the selectable plugin list
function initSelectablePluginList(){
$("#selectablePluginList").html("");
$("#selectablePluginList").html(`<div class="item" style="pointer-events: none; user-select: none; opacity: 0.6;">
<i class="ui green check circle icon"></i> No selected tag
</div>`);
$.get(`/api/plugins/list`, function(data){
data.forEach(plugin => {
if (plugin.Spec.type != 0) {