"""Send message to Slack Bot."""
return post(self.cfg.getCoffeebotURL(), dumps({"text": self.msg}))
+ def get_drink_smile(self, drink):
+ """Return Slack smile for ``drink``.
+
+ Keyword arguments:
+ drink -- Drink of smile.
+ """
+ smiles = {
+ "tea": ":tea:",
+ "espresso": ":coffee:",
+ "espresso lungo": ":owl:",
+ "cappuccino": ":flara:",
+ "latte macchiato": ":baby_bottle:",
+ "Club-Mate 0,5 l": ":club-mate:",
+ "Club-Mate 0,33 l": ":club-mate_cola:",
+ }
+ return smiles[drink]
+
def getHeroComment(self):
"""Return comment for hero."""
hsuff = [
def computeEqualDrinkers(self):
"""Compute equally drunken drinkers."""
+ self.topeq = []
if len(self.top) <= 0:
return
lc = self.top[0][1] + 1
self.topeq[-1].append((un, c))
return
+ def load_top_drinks(self):
+ """Get list of top drinks, update message."""
+ self.msg = "*Top drinks*\n"
+ self.top = self.db.get_top_drinks()
+ self.computeEqualDrinkers()
+ i = 1
+ for drinks in self.topeq[:3]:
+ c = drinks[0][1]
+ d = [un for (un, c) in drinks]
+ self.msg += "{}{}".format(i, self.isuff[i])
+ if len(d) > 1:
+ self.msg += " are "
+ else:
+ self.msg += " is "
+ for un in d:
+ if un is d[0]:
+ self.msg += "{}".format(self.get_drink_smile(un))
+ elif un is d[-1]:
+ self.msg += "" if len(d) == 2 else ","
+ self.msg += " and {}".format(self.get_drink_smile(un))
+ else:
+ self.msg += ", *{}*".format(self.get_drink_smile(un))
+ if len(d) > 1:
+ self.msg += " with each of "
+ else:
+ self.msg += " with "
+ self.msg += "`{}` drunk".format(c)
+ self.msg += "\n"
+ i += 1
+
def loadTopMateDrinkers(self):
"""Get list of top Mate drinkers, update message."""
self.msg = "*Top 5 Club-Mate drinkers*\n"
else:
self.msg += " who drank "
if c > 1:
- self.msg += "`{:.2f}` teas".format(c)
+ self.msg += "`{}` teas".format(c)
else:
- self.msg += "`{:.2f}` tea".format(c)
+ self.msg += "`{}` tea".format(c)
self.msg += "\n"
i += 1
self.msg += "\n"
- self.msg += "Oh, and together we drank *{:.2f}* teas {}".format(
+ self.msg += "Oh, and together we drank *{}* teas {}".format(
tot,
self.getSomeSmile()
)