forked from Ugric/Komodo-Hub
stash
This commit is contained in:
1 parent
cd95be172b
commit
adf3f13a0d
4 files changed
+42
-5
No files matched your search
BIN
Binary file not shown.
Whitespace-only changes.
+27
-5
@@ -547,7 +547,7 @@ def get_user_conversations(user_id):
|
|||||||
|
|
||||||
|
|
||||||
def get_messages_between_users(user1_id, user2_id, limit=50, offset=0):
|
def get_messages_between_users(user1_id, user2_id, limit=50, offset=0):
|
||||||
"""Get message history between two users"""
|
"""Simplified version - Get message history between two users"""
|
||||||
with get_db() as conn:
|
with get_db() as conn:
|
||||||
rows = conn.execute("""
|
rows = conn.execute("""
|
||||||
SELECT m.*,
|
SELECT m.*,
|
||||||
@@ -556,14 +556,36 @@ def get_messages_between_users(user1_id, user2_id, limit=50, offset=0):
|
|||||||
FROM messages m
|
FROM messages m
|
||||||
JOIN users u1 ON m.sender_id = u1.user_id
|
JOIN users u1 ON m.sender_id = u1.user_id
|
||||||
JOIN users u2 ON m.receiver_id = u2.user_id
|
JOIN users u2 ON m.receiver_id = u2.user_id
|
||||||
WHERE ((m.sender_id = ? AND m.receiver_id = ?) OR (m.sender_id = ? AND m.receiver_id = ?))
|
WHERE (m.sender_id = ? AND m.receiver_id = ?)
|
||||||
AND ((m.sender_id = ? AND m.sender_deleted = 0) OR (m.receiver_id = ? AND m.receiver_deleted = 0))
|
OR (m.sender_id = ? AND m.receiver_id = ?)
|
||||||
ORDER BY m.created_at DESC
|
ORDER BY m.created_at ASC
|
||||||
LIMIT ? OFFSET ?
|
LIMIT ? OFFSET ?
|
||||||
""", (user1_id, user2_id, user2_id, user1_id, user1_id, user2_id, limit, offset))
|
""", (user1_id, user2_id, user2_id, user1_id, limit, offset))
|
||||||
|
|
||||||
return [dict(row) for row in rows]
|
return [dict(row) for row in rows]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#def get_messages_between_users(user1_id, user2_id, limit=50, offset=0):
|
||||||
|
# """Get message history between two users"""
|
||||||
|
# with get_db() as conn:
|
||||||
|
# rows = conn.execute("""
|
||||||
|
# SELECT m.*,
|
||||||
|
# u1.username as sender_name,
|
||||||
|
# u2.username as receiver_name
|
||||||
|
# FROM messages m
|
||||||
|
# JOIN users u1 ON m.sender_id = u1.user_id
|
||||||
|
# JOIN users u2 ON m.receiver_id = u2.user_id
|
||||||
|
# WHERE ((m.sender_id = ? AND m.receiver_id = ?) OR (m.sender_id = ? AND m.receiver_id = ?))
|
||||||
|
# AND ((m.sender_id = ? AND m.sender_deleted = 0) OR (m.receiver_id = ? AND m.receiver_deleted = 0))
|
||||||
|
# ORDER BY m.created_at DESC
|
||||||
|
# LIMIT ? OFFSET ?
|
||||||
|
# """, (user1_id, user2_id, user2_id, user1_id, user1_id, user2_id, limit, offset))
|
||||||
|
# return [dict(row) for row in rows]
|
||||||
|
|
||||||
|
|
||||||
def mark_message_as_read(message_id, user_id):
|
def mark_message_as_read(message_id, user_id):
|
||||||
"""Mark a specific message as read"""
|
"""Mark a specific message as read"""
|
||||||
with get_db() as conn:
|
with get_db() as conn:
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
CREATE TABLE IF NOT EXISTS messages (
|
||||||
|
message_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||||
|
sender_id INTEGER NOT NULL,
|
||||||
|
receiver_id INTEGER NOT NULL,
|
||||||
|
subject TEXT,
|
||||||
|
body TEXT NOT NULL,
|
||||||
|
is_read BOOLEAN DEFAULT 0,
|
||||||
|
sender_deleted BOOLEAN DEFAULT 0,
|
||||||
|
receiver_deleted BOOLEAN DEFAULT 0,
|
||||||
|
parent_message_id INTEGER,
|
||||||
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
FOREIGN KEY (sender_id) REFERENCES users(user_id),
|
||||||
|
FOREIGN KEY (receiver_id) REFERENCES users(user_id),
|
||||||
|
FOREIGN KEY (parent_message_id) REFERENCES messages(message_id)
|
||||||
|
);
|
||||||
Reference in new issue
Block a user