1 # -*- coding: utf-8 -*-
2 """Get data from database and publish them."""
4 from random import randint
5 from requests import post
6 from cbconf import Conf
10 """This class connects configuration, database access and publishing."""
13 self.db = Db(self.cfg.getCoffeeDbPath())
22 def sendMsgToSlack(self):
23 """Send message to Slack Bot."""
24 return post(self.cfg.getCoffeebotURL(), dumps({"text": self.msg}))
26 def getHeroComment(self):
27 """Return comment for hero."""
31 " because couldn't resist",
35 " - superultramaxidrinker",
36 " and didn't sleep last week",
37 " in last 604800 seconds",
39 " and still drinking",
41 ri = randint(0, len(hsuff) - 1)
44 def getSomeSmile(self):
45 """Return some Slack smile."""
55 ri = randint(0, len(smiles) - 1)
58 def loadTopMateDrinkers(self):
59 """Get list of top Mate drinkers, update message."""
60 self.msg = "*Top 5 Club-Mate drinkers*\n"
61 self.top = self.db.getTopMateDrinkers()
62 totl = [c for (un, c) in self.top]
64 isuff = {1: "st", 2: "nd", 3: "rd", 4: "th", 5: "th"}
66 for (un, c) in self.top[:5]:
67 self.msg += "{}{} is *{}* who drank `{:.2f}` liters".format(
73 self.msg += self.getHeroComment()
77 self.msg += "Oh, and together we drank *{:.2f}* liters {}".format(