Add chat actions, channels/groups mgmt, directory + deadmans bots, network status
Profiles/bots (profiles.py, main.py): - Surface real send errors; fix group send and member-count staleness (refresh on view) - Group/channel actions: join, leave, owner delete; consistent member counts - Contacts: always-visible Chat, plus Clear chat and Delete contact - Support bot: OpenAI-compatible LLM backend (Grok/Ollama/OpenAI) per-bot config - Deadmans bot: check-in window, trigger message, recipients, owner - Directory bot: add-to-group registration, super-user /approve /reject /list, search, publishes listing.json in the website schema (directory.py registry module) - Profile edit (name/bio/avatar) + avatars on list pages - Global status + /network page (operators, SMP/XFTP servers) and Settings network info UI (templates): - Chat rooms; collapsible left sidebar with notifications + network widget - Per-directory-bot website generated on creation (name substituted) - Matrix theme; copy/hyperlink addresses; site footer Ignore runtime bot state and generated directory sites. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -61,6 +61,13 @@ def update_address(profile_id: int, address: str) -> None:
|
||||
conn.execute("UPDATE profiles SET address=? WHERE id=?", (address, profile_id))
|
||||
|
||||
|
||||
def update_config(profile_id: int, config: dict) -> None:
|
||||
with get_conn() as conn:
|
||||
conn.execute(
|
||||
"UPDATE profiles SET config=? WHERE id=?", (json.dumps(config), profile_id)
|
||||
)
|
||||
|
||||
|
||||
def delete_profile(profile_id: int) -> None:
|
||||
with get_conn() as conn:
|
||||
conn.execute("DELETE FROM profiles WHERE id=?", (profile_id,))
|
||||
|
||||
Reference in New Issue
Block a user