hub: F-16 — inline two-step confirm partial replaces every native confirm() (offsite/PBS re-issue, freeze, telemetry reset, dismiss-all, regen-password, claim-resend, block/delete, geo-disable); hub_confirm_gate.py enforces zero
Claude-Session: https://claude.ai/code/session_01GzammAMzsJTgpQHqxwM2bC
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
<title>{{.AppName}} — Felhom Hub</title>
|
||||
<link rel="stylesheet" href="/style.css?v={{hubVersion}}">
|
||||
<script src="/static/chart.min.js"></script>
|
||||
{{template "inline_confirm_js"}}
|
||||
</head>
|
||||
<body>
|
||||
{{template "icon_sprite"}}
|
||||
@@ -45,10 +46,9 @@
|
||||
<section class="card">
|
||||
<div style="display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 0.5rem;">
|
||||
<h2 style="margin: 0;">{{if .Summary}}{{if .Summary.DisplayName}}{{.Summary.DisplayName}}{{else}}{{.AppName}}{{end}}{{else}}{{.AppName}}{{end}}</h2>
|
||||
<form method="POST" action="/apps/{{.AppName}}/reset-telemetry{{if .Period}}?period={{.Period}}{{end}}"
|
||||
onsubmit="return confirm('Are you sure you want to delete all telemetry data for {{.AppName}}? This cannot be undone.');">
|
||||
<form method="POST" action="/apps/{{.AppName}}/reset-telemetry{{if .Period}}?period={{.Period}}{{end}}">
|
||||
<input type="hidden" name="_csrf" value="{{.CSRFToken}}">
|
||||
<button type="submit" class="btn btn-sm btn-danger">Reset Telemetry</button>
|
||||
<button type="submit" class="btn btn-sm btn-danger" data-confirm="Delete all telemetry data for {{.AppName}}? This cannot be undone.">Reset Telemetry</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="info-grid">
|
||||
@@ -270,7 +270,7 @@
|
||||
</table>
|
||||
<div style="display: flex; gap: 0.5rem; margin-top: 0.75rem;">
|
||||
<button type="submit" class="btn btn-sm btn-danger" onclick="document.getElementById('issueAction').value='selected';">Dismiss Selected</button>
|
||||
<button type="submit" class="btn btn-sm btn-danger" onclick="if(!confirm('Dismiss ALL issues for {{.AppName}}? They resurface on a new occurrence.')) return false; document.getElementById('issueAction').value='all';">Dismiss All Issues</button>
|
||||
<button type="submit" class="btn btn-sm btn-danger" onclick="document.getElementById('issueAction').value='all';" data-confirm="Dismiss ALL issues for {{.AppName}}? They resurface on a new occurrence.">Dismiss All Issues</button>
|
||||
</div>
|
||||
</form>
|
||||
<script>
|
||||
|
||||
Reference in New Issue
Block a user