feat: add user preferences for task reminders

main
brobert (aider) 3 months ago
parent 8cddb8f4f0
commit 7e0ebfe5ac

@ -25,6 +25,13 @@ CREATE TABLE IF NOT EXISTS users (
last_seen TEXT -- ISO 8601 timestamp of last activity
);
-- User preferences table
CREATE TABLE IF NOT EXISTS user_preferences (
phone_number TEXT PRIMARY KEY,
reminders_enabled BOOLEAN NOT NULL DEFAULT TRUE,
FOREIGN KEY(phone_number) REFERENCES users(phone_number)
);
-- Create triggers for task timestamps
CREATE TRIGGER IF NOT EXISTS update_task_timestamp
AFTER UPDATE ON tasks

@ -0,0 +1,18 @@
import { query, execute } from '../database/db';
export function getUserPreferences(phoneNumber: string) {
return query(
'SELECT * FROM user_preferences WHERE phone_number = ?',
[phoneNumber]
)[0] || { phone_number: phoneNumber, reminders_enabled: true };
}
export function setRemindersEnabled(phoneNumber: string, enabled: boolean) {
execute(
`INSERT INTO user_preferences (phone_number, reminders_enabled)
VALUES (?, ?)
ON CONFLICT(phone_number) DO UPDATE SET
reminders_enabled = excluded.reminders_enabled`,
[phoneNumber, enabled]
);
}
Loading…
Cancel
Save