@ -3696,6 +3696,22 @@ class MySimpleXMLRPCRequestHandler(SimpleXMLRPCRequestHandler):
data + = json . dumps ( { ' msgid ' : msgid . encode ( ' hex ' ) , ' toAddress ' : toAddress , ' fromAddress ' : fromAddress , ' subject ' : subject . encode ( ' base64 ' ) , ' message ' : message . encode ( ' base64 ' ) , ' encodingType ' : 2 , ' receivedTime ' : received } , indent = 4 , separators = ( ' , ' , ' : ' ) )
data + = ' ]} '
return data
elif method == ' getInboxMessageById ' :
msgid = params [ 0 ] . decode ( ' hex ' )
v = ( msgid , )
shared . sqlLock . acquire ( )
shared . sqlSubmitQueue . put ( ''' SELECT msgid, toaddress, fromaddress, subject, received, message FROM inbox WHERE msgid=? ''' )
shared . sqlSubmitQueue . put ( v )
queryreturn = shared . sqlReturnQueue . get ( )
shared . sqlLock . release ( )
data = ' { " inboxMessage " :[ '
for row in queryreturn :
msgid , toAddress , fromAddress , subject , received , message , = row
subject = shared . fixPotentiallyInvalidUTF8Data ( subject )
message = shared . fixPotentiallyInvalidUTF8Data ( message )
data + = json . dumps ( { ' msgid ' : msgid . encode ( ' hex ' ) , ' toAddress ' : toAddress , ' fromAddress ' : fromAddress , ' subject ' : subject . encode ( ' base64 ' ) , ' message ' : message . encode ( ' base64 ' ) , ' encodingType ' : 2 , ' receivedTime ' : received } , indent = 4 , separators = ( ' , ' , ' : ' ) )
data + = ' ]} '
return data
elif method == ' getAllSentMessages ' :
shared . sqlLock . acquire ( )
shared . sqlSubmitQueue . put ( ''' SELECT msgid, toaddress, fromaddress, subject, lastactiontime, message, status FROM sent where folder= ' sent ' ORDER BY lastactiontime ''' )