36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
"""Helper Inbox performs inbox messages related operations"""
|
|
|
|
import queues
|
|
from helper_sql import sqlExecute, sqlQuery
|
|
|
|
|
|
def insert(t):
|
|
"""Perform an insert into the "inbox" table"""
|
|
sqlExecute('''INSERT INTO inbox VALUES (?,?,?,?,?,?,?,?,?,?)''', *t)
|
|
# shouldn't emit changedInboxUnread and displayNewInboxMessage
|
|
# at the same time
|
|
# queues.UISignalQueue.put(('changedInboxUnread', None))
|
|
|
|
|
|
def trash(msgid):
|
|
"""Mark a message in the `inbox` as `trash`"""
|
|
sqlExecute('''UPDATE inbox SET folder='trash' WHERE msgid=?''', msgid)
|
|
queues.UISignalQueue.put(('removeInboxRowByMsgid', msgid))
|
|
|
|
|
|
def delete(ack_data):
|
|
"""Permanent delete message from trash"""
|
|
sqlExecute("DELETE FROM inbox WHERE msgid = ?", ack_data)
|
|
|
|
|
|
def undeleteMessage(msgid):
|
|
"""Undelte the message"""
|
|
sqlExecute('''UPDATE inbox SET folder='inbox' WHERE msgid=?''', msgid)
|
|
|
|
|
|
def isMessageAlreadyInInbox(sigHash):
|
|
"""Check for previous instances of this message"""
|
|
queryReturn = sqlQuery(
|
|
'''SELECT COUNT(*) FROM inbox WHERE sighash=?''', sigHash)
|
|
return queryReturn[0][0] != 0
|