The "*" wildcard was never in assignablePermissions, so an operator holding it (the one the first-run wizard creates) showed every box unticked while having every right, and there was no way to take it away. Its own row fixes both; the grid is disabled while it is on, since normalisePermissions collapses "*" plus anything back to "*". That made guardManagerRemoval reachable from the UI for the first time, so it now has an integration test covering the wildcard match and the enabled filter in its SQL.
32 lines
1.1 KiB
HTML
32 lines
1.1 KiB
HTML
<!doctype html>
|
|
<html lang="en" translate="no">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<link rel="icon" type="image/png" href="/logo.png" />
|
|
<title>OwpenGram Admin</title>
|
|
<script>
|
|
(function () {
|
|
try {
|
|
var stored = localStorage.getItem("telesrv.admin.theme");
|
|
var theme =
|
|
stored === "light" || stored === "dark"
|
|
? stored
|
|
: window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches
|
|
? "dark"
|
|
: "light";
|
|
document.documentElement.setAttribute("data-theme", theme);
|
|
document.documentElement.style.colorScheme = theme;
|
|
} catch (e) {
|
|
document.documentElement.setAttribute("data-theme", "light");
|
|
}
|
|
})();
|
|
</script>
|
|
|
|
<script type="module" crossorigin src="/assets/index-DTpNyCcP.js"></script>
|
|
<link rel="stylesheet" crossorigin href="/assets/index-P_k7ini0.css">
|
|
</head>
|
|
<body>
|
|
<div id="root"></div>
|
|
|
|
</body>
|
|
</html>
|