diff --git a/dataobjs.py b/dataobjs.py
index a452695..8dbd22d 100644
--- a/dataobjs.py
+++ b/dataobjs.py
@@ -249,15 +249,28 @@ class PesterProfile(object):
initials = pcf+self.initials()
return "%s %s %s %s." % \
(syscolor.name(), self.colorhtml(), initials, timetext, verb, channel[1:].upper().replace("_", " "))
- def memobanmsg(self, opchum, opgrammar, syscolor, timeGrammar, reason):
+ def memobanmsg(self, opchum, opgrammar, syscolor, initials, reason):
+ opinit = opgrammar.pcf+opchum.initials()+opgrammar.number
+ if type(initials) == type(list()):
+ if opchum.handle == reason:
+ return "%s banned %s from responding to memo." % \
+ (opchum.colorhtml(), opinit, self.colorhtml(), ", ".join(initials))
+ else:
+ return "%s banned %s from responding to memo: [%s]." % \
+ (opchum.colorhtml(), opinit, self.colorhtml(), ", ".join(initials), unicode(reason))
+ else:
+ initials = timeGrammar.pcf+self.initials()+timeGrammar.number
+ if opchum.handle == reason:
+ return "%s banned %s from responding to memo." % \
+ (opchum.colorhtml(), opinit, self.colorhtml(), initials)
+ else:
+ return "%s banned %s from responding to memo: [%s]." % \
+ (opchum.colorhtml(), opinit, self.colorhtml(), initials, unicode(reason))
+ def memopermabanmsg(self, opchum, opgrammar, syscolor, timeGrammar):
initials = timeGrammar.pcf+self.initials()+timeGrammar.number
opinit = opgrammar.pcf+opchum.initials()+opgrammar.number
- if opchum.handle == reason:
- return "%s banned %s from responding to memo." % \
- (opchum.colorhtml(), opinit, self.colorhtml(), initials)
- else:
- return "%s banned %s from responding to memo: [%s]." % \
- (opchum.colorhtml(), opinit, self.colorhtml(), initials, unicode(reason))
+ return "%s permabanned %s from the memo." % \
+ (opchum.colorhtml(), opinit, self.colorhtml(), initials)
def memojoinmsg(self, syscolor, td, timeGrammar, verb):
(temporal, pcf, when) = (timeGrammar.temporal, timeGrammar.pcf, timeGrammar.when)
timetext = timeDifference(td)
diff --git a/memos.py b/memos.py
index cbca0a9..9cc0e20 100644
--- a/memos.py
+++ b/memos.py
@@ -987,19 +987,21 @@ class PesterMemo(PesterConvo):
ttracker = self.times[h]
else:
ttracker = TimeTracker(timedelta(0))
+ allinitials = []
+ opchum = PesterProfile(op)
+ if self.times.has_key(op):
+ opgrammar = self.times[op].getGrammar()
+ elif op == self.mainwindow.profile().handle:
+ opgrammar = self.time.getGrammar()
+ else:
+ opgrammar = TimeGrammar("CURRENT", "C", "RIGHT NOW")
while ttracker.getTime() is not None:
grammar = ttracker.getGrammar()
- opchum = PesterProfile(op)
- if self.times.has_key(op):
- opgrammar = self.times[op].getGrammar()
- elif op == self.mainwindow.profile().handle:
- opgrammar = self.time.getGrammar()
- else:
- opgrammar = TimeGrammar("CURRENT", "C", "RIGHT NOW")
- msg = chum.memobanmsg(opchum, opgrammar, systemColor, grammar, reason)
- self.textArea.append(convertTags(msg))
- self.mainwindow.chatlog.log(self.channel, msg)
+ allinitials.append("%s%s%s" % (grammar.pcf, chum.initials(), grammar.number))
ttracker.removeTime(ttracker.getTime())
+ msg = chum.memobanmsg(opchum, opgrammar, systemColor, allinitials, reason)
+ self.textArea.append(convertTags(msg))
+ self.mainwindow.chatlog.log(self.channel, msg)
if chum is self.mainwindow.profile():
# are you next?