示例#1
0
 def markRead(self, value=True):
     from server.models.ssuser import SSUser
     db = core.connect(SSUser.messagesDb(self.toId))
     if value:
         if not self.isRead():
             db[Message.makeReadId(self.id, self.toId)] = {
                 "type": "message-read",
                 "msgId": self.id,
                 "toId": self.toId,
                 }
     else:
         del db[Message.makeReadId(self.id, self.toId)]
     core.replicate(SSUser.messagesDb(self.toId), "shiftspace/shared")
     return self
示例#2
0
 def create(cls, fromId, toId, title, text, meta="generic", content=None):
     from server.models.ssuser import SSUser
     db = core.connect(SSUser.messagesDb(toId))
     json = {
         "fromId": fromId,
         "toId": toId,
         "title": text,
         "text": text,
         "meta": meta,
         "content": content or {}
         }
     newMessage = Message(**utils.clean(json))
     newMessage.store(db)
     core.replicate(SSUser.messagesDb(toId), "shiftspace/shared")
     return newMessage
示例#3
0
 def read(cls, id, userId=None):
     db = core.connect("shiftspace/shared")
     theMessage = Message.load(db, id)
     if theMessage == None and userId:
         db = core.connect(SSUser.messagesDb(userId))
         theMessage = Message.load(db, id)
     return Message.joinData(theMessage, userId)
示例#4
0
 def delete(self, id):
     db = core.connect(SSUser.messagesDb(self.toId))
     del db[id]