diff --git a/helpers/answer.py b/helpers/answer.py index 3eb903e..f4b11d0 100644 --- a/helpers/answer.py +++ b/helpers/answer.py @@ -182,6 +182,12 @@ class Answer(BaseAnswer): text = "Сегодня у тебя нет пар, отдыхай." else: text = ruz.schedule_builder(lessons) + elif message.text == "Пары завтра": + lessons = mongo.get_tomorrow_lessons(user) + if len(lessons) == 0: + text = "Завтра у тебя нет пар, отдыхай." + else: + text = ruz.schedule_builder(lessons) elif message.text == "Уведомления о парах": bot.send_message( user.chat_id, diff --git a/helpers/keyboards.py b/helpers/keyboards.py index caf1926..38e44d3 100644 --- a/helpers/keyboards.py +++ b/helpers/keyboards.py @@ -3,7 +3,7 @@ import telebot def main_keyboard(): kb = telebot.types.ReplyKeyboardMarkup(True, False) - kb.row("Пары сегодня") + kb.row("Пары сегодня", "Пары завтра") kb.row("Уведомления о парах") kb.row("Ежедневные уведомления") kb.row("Сброс настроек") diff --git a/helpers/mongo.py b/helpers/mongo.py index 808555d..4e444d5 100644 --- a/helpers/mongo.py +++ b/helpers/mongo.py @@ -53,18 +53,23 @@ class Mongo: def lessons_collection(self): return self["lessons"] - def get_today_lessons(self, user: User): - today = now(user) - tomorrow = today + datetime.timedelta(days=1) - tomorrow = datetime.datetime(year=tomorrow.year, month=tomorrow.month, day=tomorrow.day) + def _get_lessons_on_date(self, user: User, date: datetime.datetime): + date = datetime.datetime(year=date.year, month=date.month, day=date.day) + next_date = date + datetime.timedelta(days=1) lessons = [] for lesson in self.lessons_collection.find({ "hse_user_id": user.hse_id, - "begin": {"$gte": today, "$lte": tomorrow}} + "begin": {"$gte": date, "$lte": next_date}} ): lessons.append(lesson) lessons.sort(key=lambda les: les["begin"]) return lessons + def get_today_lessons(self, user: User): + return self._get_lessons_on_date(user, now(user)) + + def get_tomorrow_lessons(self, user: User): + return self._get_lessons_on_date(user, now(user) + datetime.timedelta(days=1)) + mongo = Mongo()