]> rtime.felk.cvut.cz Git - hubacji1/coffee-getter.git/commitdiff
Add top tea drinkers getter method
authorJiri Vlasak <hubacji1@fel.cvut.cz>
Thu, 2 Jan 2020 09:53:09 +0000 (10:53 +0100)
committerJiri Vlasak <hubacji1@fel.cvut.cz>
Thu, 2 Jan 2020 09:59:35 +0000 (10:59 +0100)
cbgetter.py

index 280ee035827b7fcbd07dc2c026bd6fd669ba2afa..668620d4eb4684fbcec24704588a0d742961a570 100644 (file)
@@ -109,6 +109,45 @@ class CoffeebotGetter:
         )
         return
 
+    def load_top_tea_drinkers(self):
+        """Get list of top tea drinkers, update message."""
+        self.msg = "*Top 5 tea drinkers*\n"
+        self.top = self.db.get_top_tea_drinkers()
+        self.computeEqualDrinkers()
+        tot = sum([c for (un, c) in self.top])
+        i = 1
+        for drinkers in self.topeq[:5]:
+            c = drinkers[0][1]
+            d = [un for (un, c) in drinkers]
+            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(un)
+                elif un is d[-1]:
+                    self.msg += "" if len(d) == 2 else ","
+                    self.msg += " and *{}*".format(un)
+                else:
+                    self.msg += ", *{}*".format(un)
+            if len(d) > 1:
+                self.msg += " of whom each drank "
+            else:
+                self.msg += " who drank "
+            if c > 1:
+                self.msg += "`{:.2f}` teas".format(c)
+            else:
+                self.msg += "`{:.2f}` tea".format(c)
+            self.msg += "\n"
+            i += 1
+        self.msg += "\n"
+        self.msg += "Oh, and together we drank *{:.2f}* teas {}".format(
+            tot,
+            self.getSomeSmile()
+        )
+
     def loadDrunkSum(self, *args, **kwargs):
         """Get list of drunken ``flavor`` from ``dtf`` to ``dtt``, update msg.