Skip to content

Commit 1c90ffd

Browse files
compscidrclaude
andcommitted
Make plugin cards always collapsible, start collapsed
- Card header is clickable to expand/collapse regardless of enabled state - Cards start collapsed by default so the page is clean - Enable/disable toggle only saves the setting, doesn't control collapse - stopPropagation on the switch prevents clicking it from also toggling the collapse Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent e308e2a commit 1c90ffd

4 files changed

Lines changed: 9 additions & 16 deletions

File tree

themes/default/templates/admin_settings.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,15 @@ <h1>Site Settings</h1>
4242
{{ $values := .CurrentValues }}
4343
{{ $enabled := index $values "enabled" }}
4444
<div class="card mb-4">
45-
<div class="card-header d-flex justify-content-between align-items-center">
45+
<div class="card-header d-flex justify-content-between align-items-center" style="cursor: pointer;" data-bs-toggle="collapse" data-bs-target="#plugin-body-{{ $pluginName }}">
4646
<span><strong>Plugin: {{ .DisplayName }}</strong> <span class="text-muted">({{ .PluginName }})</span></span>
47-
<div class="form-check form-switch mb-0">
47+
<div class="form-check form-switch mb-0" onclick="event.stopPropagation();">
4848
<input class="form-check-input plugin-enable-toggle" type="checkbox" id="{{ $pluginName }}.enabled" name="{{ $pluginName }}.enabled" data-plugin="{{ $pluginName }}" {{ if eq $enabled "true" }}checked{{ end }}
4949
onchange="togglePluginEnabled(this);">
5050
<label class="form-check-label" for="{{ $pluginName }}.enabled">Enabled</label>
5151
</div>
5252
</div>
53-
<div class="collapse {{ if eq $enabled "true" }}show{{ end }}" id="plugin-body-{{ $pluginName }}">
53+
<div class="collapse" id="plugin-body-{{ $pluginName }}">
5454
<div class="card-body">
5555
<form class="plugin-settings-form" data-plugin="{{ $pluginName }}">
5656
{{ range .Settings }}

themes/forest/templates/admin_settings.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,15 @@ <h1>Site Settings</h1>
4242
{{ $values := .CurrentValues }}
4343
{{ $enabled := index $values "enabled" }}
4444
<div class="card mb-4">
45-
<div class="card-header d-flex justify-content-between align-items-center">
45+
<div class="card-header d-flex justify-content-between align-items-center" style="cursor: pointer;" data-bs-toggle="collapse" data-bs-target="#plugin-body-{{ $pluginName }}">
4646
<span><strong>Plugin: {{ .DisplayName }}</strong> <span class="text-muted">({{ .PluginName }})</span></span>
47-
<div class="form-check form-switch mb-0">
47+
<div class="form-check form-switch mb-0" onclick="event.stopPropagation();">
4848
<input class="form-check-input plugin-enable-toggle" type="checkbox" id="{{ $pluginName }}.enabled" name="{{ $pluginName }}.enabled" data-plugin="{{ $pluginName }}" {{ if eq $enabled "true" }}checked{{ end }}
4949
onchange="togglePluginEnabled(this);">
5050
<label class="form-check-label" for="{{ $pluginName }}.enabled">Enabled</label>
5151
</div>
5252
</div>
53-
<div class="collapse {{ if eq $enabled "true" }}show{{ end }}" id="plugin-body-{{ $pluginName }}">
53+
<div class="collapse" id="plugin-body-{{ $pluginName }}">
5454
<div class="card-body">
5555
<form class="plugin-settings-form" data-plugin="{{ $pluginName }}">
5656
{{ range .Settings }}

themes/minimal/templates/admin_settings.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,15 @@ <h1>Site Settings</h1>
4242
{{ $values := .CurrentValues }}
4343
{{ $enabled := index $values "enabled" }}
4444
<div class="card mb-4">
45-
<div class="card-header d-flex justify-content-between align-items-center">
45+
<div class="card-header d-flex justify-content-between align-items-center" style="cursor: pointer;" data-bs-toggle="collapse" data-bs-target="#plugin-body-{{ $pluginName }}">
4646
<span><strong>Plugin: {{ .DisplayName }}</strong> <span class="text-muted">({{ .PluginName }})</span></span>
47-
<div class="form-check form-switch mb-0">
47+
<div class="form-check form-switch mb-0" onclick="event.stopPropagation();">
4848
<input class="form-check-input plugin-enable-toggle" type="checkbox" id="{{ $pluginName }}.enabled" name="{{ $pluginName }}.enabled" data-plugin="{{ $pluginName }}" {{ if eq $enabled "true" }}checked{{ end }}
4949
onchange="togglePluginEnabled(this);">
5050
<label class="form-check-label" for="{{ $pluginName }}.enabled">Enabled</label>
5151
</div>
5252
</div>
53-
<div class="collapse {{ if eq $enabled "true" }}show{{ end }}" id="plugin-body-{{ $pluginName }}">
53+
<div class="collapse" id="plugin-body-{{ $pluginName }}">
5454
<div class="card-body">
5555
<form class="plugin-settings-form" data-plugin="{{ $pluginName }}">
5656
{{ range .Settings }}

www/js/admin-script.js

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -234,13 +234,6 @@ function rollbackRevision(postId, revisionId) {
234234
function togglePluginEnabled(checkbox) {
235235
var pluginName = $(checkbox).data("plugin");
236236
var enabled = checkbox.checked ? "true" : "false";
237-
var $body = $("#plugin-body-" + pluginName);
238-
239-
if (checkbox.checked) {
240-
$body.collapse("show");
241-
} else {
242-
$body.collapse("hide");
243-
}
244237

245238
// Save the enabled setting immediately
246239
var settings = [{"key": pluginName + ".enabled", "value": enabled, "type": "text"}];

0 commit comments

Comments
 (0)