minerbot/notes.py

36 lines
955 B
Python

import time
class BasicNotebook:
def __init__(self):
self.messages = {}
def _addToNotes(self,touser,msgformat):
if touser in self.messages:
self.messages[touser].append(msgformat)
else:
self.messages[touser]=[msgformat]
def addNote(self,touser,fromuser,msg):
self._addToNotes(touser,[fromuser,msg])
def _readNotes(self,user,fmtstr):
if not self.checkNotes(user):
return []
ret = []
for messageI in self.messages[user]:
ret.append(fmtstr.format(*messageI))
del self.messages[user]
return ret
def readNotes(self,user):
return self._readNotes(user,"{0} left a message: {1}")
def checkNotes(self,user):
return user in self.messages.keys()
class DatedNotebook(BasicNotebook):
def addNote(self,touser,fromuser,msg):
self._addToNotes(touser,[fromuser,msg,time.strftime("%H:%M:%S"),time.strftime("%A, %B %d, %Y")])
def readNotes(self,user):
return self._readNotes(user,"{0} left a message at {2} on {3}: {1}")