Files
nc_bot_webhooks/css/adminSettings.css
T
kyle 18084d0f69 docs: add project documentation and update README
- Add `agent.md`: Complete maintenance reference covering project structure, API interactions, data flow, configuration, security, and operational procedures.
- Add `architecture.md`: High-level architecture overview including component map, data flow, design decisions, and security model.
- Update `README.md`: Add Apprise support documentation, manual deployment instructions, updated installation steps (bot admin requirement), and expanded payload mapping and troubleshooting sections.
- Improve `lib/Controller/WebhookController.php`: Enhance `saveBotPassword` validation to check for missing fields and validate the password content.
- Improve `lib/Service/TalkService.php`: Add `validateBotPassword` method for round-trip encryption testing and integrate it into `saveConfig`.
- Update `css/adminSettings.css`: Add styles for the new `.nc-app-frame` wrapper.
- Update `templates/adminSettings.php`: Refactor UI structure to use `.nc-app-frame` and improve layout of settings sections.
2026-06-12 19:44:42 -07:00

106 lines
2.2 KiB
CSS

.nc-app-frame {
border: 1px solid var(--color-border);
border-radius: 6px;
padding: 1.5em;
margin-bottom: 1em;
}
.nc-app-frame h2 {
margin-top: 0;
margin-bottom: 1em;
padding-bottom: 0.5em;
border-bottom: 1px solid var(--color-border);
}
.nc-settings-section {
margin-bottom: 2em;
padding: 1em;
border: 1px solid var(--color-border);
border-radius: 4px;
}
.nc-settings-section h3 {
margin-top: 0;
}
.nc-room-item {
display: flex;
align-items: center;
gap: 8px;
padding: 4px 0;
}
.nc-room-item span {
font-size: 0.9em;
}
.nc-room-tokens {
margin-left: 24px;
margin-top: 8px;
padding: 8px;
background: var(--color-background-dark);
border-radius: 4px;
}
.nc-token-row {
display: flex;
gap: 4px;
margin-bottom: 4px;
}
.nc-token-input {
flex: 1;
font-family: monospace;
font-size: 0.85em;
background: var(--color-main-background);
border: 1px solid var(--color-border);
padding: 4px 8px;
border-radius: 3px;
}
.nc-token-url-input {
flex: 1;
font-family: monospace;
font-size: 0.8em;
background: var(--color-main-background);
border: 1px solid var(--color-border);
padding: 4px 8px;
border-radius: 3px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.nc-token-hint {
color: var(--color-text-lighter);
font-size: 0.85em;
margin: 4px 0;
}
.nc-token-copy {
padding: 4px 8px;
background: var(--color-primary-element);
color: white;
border: none;
border-radius: 3px;
cursor: pointer;
font-size: 0.85em;
}
.nc-token-revoke {
padding: 4px 8px;
background: var(--color-error);
color: white;
border: none;
border-radius: 3px;
cursor: pointer;
font-size: 0.85em;
}
.nc-generate-token {
margin-top: 8px;
padding: 4px 12px;
background: var(--color-primary-element);
color: white;
border: none;
border-radius: 3px;
cursor: pointer;
}
.nc-empty {
color: var(--color-text-lighter);
font-style: italic;
}
.nc-status-success { color: var(--color-success); }
.nc-status-error { color: var(--color-error); }
.nc-hint {
font-size: 0.85em;
color: var(--color-text-lighter);
}