Illustrations/web/templates/settings/home.html

123 lines
4.2 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{% extends "base.html" %}
{% block body_class %}themed-bg{% endblock %}
{% block content %}
<div class="container">
<h1 class="page-title">Settings</h1>
<!-- Blank Settings box -->
<div class="card" style="padding:20px; margin-bottom:20px;">
<p class="muted small">Add your settings here when youre ready.</p>
<!-- Your future settings content goes here -->
</div>
{% if user.is_authenticated and user.is_superuser %}
<h1 class="page-title">Tools</h1>
<!-- Tools box -->
<div class="card" style="padding:20px; margin-bottom:20px;">
<!-- Scripture Normalizer -->
<div class="tool-block">
<h3>Scripture Normalizer</h3>
<p class="small muted">
Standardizes Bible references (book abbreviations, separators, and repeats book names as needed).
Use preview first; Apply will modify all <code>scripture_raw</code> fields.
</p>
<div class="tool-actions">
<form method="get" action="{% url 'normalize_scripture' %}" class="inline">
<input type="number" min="0" name="limit" placeholder="Preview limit (optional)" class="tool-input">
<button class="btn btn-secondary">Preview (dry-run)</button>
</form>
<form method="post" action="{% url 'normalize_scripture' %}" class="inline">
{% csrf_token %}
<button class="btn btn-danger"
onclick="return confirm('Apply Scripture Normalizer to ALL entries? This will modify scripture_raw fields.');">
Apply to all
</button>
</form>
</div>
</div>
<hr class="tool-sep">
<!-- Source Normalizer -->
<div class="tool-block">
<h3>Source Normalizer</h3>
<p class="small muted">
Converts Watchtower/Awake!/Yearbook/KM references (e.g., “March 15, 2013 WT page 14”) into WOL short-codes
like <code>w13 3/15 p.14</code>. Non-JW sources are left unchanged.
</p>
<div class="tool-actions">
<form method="get" action="{% url 'normalize_source' %}" class="inline">
<input type="number" min="0" name="limit" placeholder="Preview limit (optional)" class="tool-input">
<button class="btn btn-secondary">Preview (dry-run)</button>
</form>
<form method="post" action="{% url 'normalize_source' %}" class="inline">
{% csrf_token %}
<button class="btn btn-danger"
onclick="return confirm('Apply Source Normalizer to ALL entries? This cannot be undone. Make a backup first.');">
Apply to all
</button>
</form>
</div>
</div>
<hr class="tool-sep">
<!-- Subject Normalizer -->
<div class="tool-block">
<h3>Subject Normalizer</h3>
<p class="small muted">
Normalize the <strong>Subject</strong> field so individual subjects are comma-separated.
Preserves multi-word subjects; lightly fixes separators like “;” and spaced dashes.
Uses your <code>subjects.txt</code> catalog when available.
</p>
<div class="tool-actions">
<form method="get" action="{% url 'normalize_subjects' %}" class="inline">
<input type="number" min="0" name="limit" placeholder="Preview limit (optional)" class="tool-input">
<button class="btn btn-secondary">Dry-run Preview</button>
</form>
<form method="post" action="{% url 'normalize_subjects' %}" class="inline">
{% csrf_token %}
<button class="btn btn-danger"
onclick="return confirm('Apply subject normalization to all entries? This cannot be undone. Make a backup first.')">
Apply to all
</button>
</form>
</div>
</div>
</div>
{% endif %}
</div>
<style>
.tool-block { margin-bottom:16px; }
.tool-block h3 {
margin:0 0 6px;
font-size:18px;
color:#0f172a;
}
.tool-actions {
display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:8px;
}
.tool-input {
border:1px solid var(--border, #d1d5db);
border-radius:8px;
padding:6px 8px;
font-size:14px;
margin-right:6px;
}
.tool-sep {
border:none;
border-top:1px solid var(--border, #e5e7eb);
margin:18px 0;
}
</style>
{% endblock %}