2 Revize 9a6b6f8af4 ... 06759e937f

Autor SHA1 Zpráva Datum
  Milinuri Nirvalen 06759e937f Sp: Improve hour notify counter před 1 rokem
  Milinuri Nirvalen c8b135421e Tg: Fix use int notify hours před 1 rokem
2 změnil soubory, kde provedl 14 přidání a 9 odebrání
  1. 9 4
      sp/messages.py
  2. 5 5
      telegram.py

+ 9 - 4
sp/messages.py

@@ -277,14 +277,17 @@ def get_cl_counter_str(cl_counter: Counter) -> str:
 
     return res
 
-def get_hour_counter_str(hour_counter: Counter) -> str:
+def get_hour_counter_str(hour_counter: Counter) -> Optional[str]:
     groups = defaultdict(list)
     for k, v in hour_counter.items():
         groups[v].append(k)
 
     res = ""
     for k, v in sorted(groups.items(), key=lambda x: int(x[0])):
-        res += f" 🔹{k} ({', '.join(sorted(map(str, v)))})"
+        if k == 1:
+            res += f" 🔸{', '.join(sorted(map(str, v)))}"
+        else:
+            res += f" 🔹{k} ({', '.join(sorted(map(str, v)))})"
 
     return res
 
@@ -339,13 +342,15 @@ class SPMessages:
 
         active_pr = round(active_users/len(users)*100, 2)
 
-        res = "🌟 Версия sp: 5.7 +3 (115)"
+        res = "🌟 Версия sp: 5.7 +3 (116)"
         res += "\n\n🌲 Разработчик: Milinuri Nirvalen (@milinuri)"
         res += f"\n🌲 [{nu_delta}] {nu_str} проверено"
         res += f"\n🌲 {lp_str} обновлено ({lp_delta} назад)"
         res += f"\n🌲 {len(users)} пользователей ({notify_count}🔔)"
         res += f"\n🌲 из них {active_users} активны ({active_pr}%)"
-        res += f"\n🌲 {get_hour_counter_str(hour_counter)}"
+        if len(hour_counter) > 0:
+            res += "\n🌲 Уведомления пользователей:"
+            res += f"\n🔔 {get_hour_counter_str(hour_counter)}"
         res += f"\n🌲 {self.user['class_let']} класс"
         res += f"\n🌲 ~{len(self.sc.l_index)} пр. ~{len(self.sc.c_index)} каб."
         res += f"\n🌲 {get_cl_counter_str(cl_counter)}"

+ 5 - 5
telegram.py

@@ -19,7 +19,7 @@ help - Главное меню
 info - Информация о боте
 
 Author: Milinuri Nirvalen
-Ver: 2.2 (sp v5.7)
+Ver: 2.2.1 (sp v5.7)
 """
 
 import asyncio
@@ -1913,12 +1913,12 @@ async def notify_mod_callback(
         sp.user["notifications"] = False
 
     elif callback_data.action == "add":
-        if callback_data.hour not in sp.user["hours"]:
-            sp.user["hours"].append(callback_data.hour)
+        if int(callback_data.hour) not in sp.user["hours"]:
+            sp.user["hours"].append(int(callback_data.hour))
 
     elif callback_data.action == "remove":
-        if callback_data.hour in sp.user["hours"]:
-            sp.user["hours"].remove(callback_data.hour)
+        if int(callback_data.hour) in sp.user["hours"]:
+            sp.user["hours"].remove(int(callback_data.hour))
 
     elif callback_data.action == "reset":
         sp.user["hours"] = []