(db: DatabaseAdapter, memberId: number)
| 111 | * Delete a member and all their messages / name history. |
| 112 | */ |
| 113 | export function deleteMember(db: DatabaseAdapter, memberId: number): boolean { |
| 114 | try { |
| 115 | db.transaction(() => { |
| 116 | db.prepare('DELETE FROM message WHERE sender_id = ?').run(memberId) |
| 117 | db.prepare('DELETE FROM member_name_history WHERE member_id = ?').run(memberId) |
| 118 | db.prepare('DELETE FROM member WHERE id = ?').run(memberId) |
| 119 | }) |
| 120 | return true |
| 121 | } catch { |
| 122 | return false |
| 123 | } |
| 124 | } |
| 125 | |
| 126 | /** |
| 127 | * Ensure the `aliases` column exists on the `member` table (DDL migration). |
no test coverage detected