11import asyncio
2- from aiogram import Dispatcher , Bot , F
2+
3+ from aiogram import Bot , Dispatcher , F
34from aiogram .filters import Command
45from aiogram .fsm .storage .memory import MemoryStorage
5- from aiogram .types import CallbackQuery , Message
6- from aiogram .fsm .context import FSMContext
7- from sqlalchemy import lambda_stmt
8- from sqlalchemy .util import await_fallback
6+ from aiogram .types import CallbackQuery
97
10- from bot .callbacks import *
11- from bot .commands import *
12- from bot .handlers import *
138from config import TOKEN
14- from messages import *
15- from states import DialogStates
9+
10+ from bot .commands import *
11+ from bot .callbacks import *
12+ from bot .fallbacks import *
1613
1714storage : MemoryStorage = MemoryStorage ()
1815dp = Dispatcher (storage = storage )
@@ -32,9 +29,6 @@ async def menu(message: Message):
3229 await menu_command (message )
3330
3431@dp .message (Command ("language" ))
35- async def language (message : Message ):
36- await language_command (message )
37-
3832@dp .message (lambda m : m .text == SETTINGS_BUTTON_LANGUAGE )
3933async def language (message : Message ):
4034 await language_command (message )
@@ -58,81 +52,45 @@ async def update_idea(message: Message, state: FSMContext):
5852 await update_idea_command (message , state )
5953
6054@dp .message (Command ("task" ))
61- async def task (message : Message , state : FSMContext ):
62- await task_command (message , state )
63-
6455@dp .message (lambda m : m .text == BUTTON_ADD_TASK )
65- async def add_task (message : Message , state : FSMContext ):
56+ async def task (message : Message , state : FSMContext ):
6657 await task_command (message , state )
6758
6859@dp .message (Command ("taskmenu" ))
6960async def task_menu (message : Message ):
7061 await task_menu_command (message )
7162
7263@dp .message (Command ("tasks" ))
64+ @dp .message (lambda m : m .text == BUTTON_ALL_TASKS )
7365async def show_tasks (message : Message ):
7466 await tasks_show_command (message )
7567
7668@dp .message (Command ("complete" ))
77- async def complete_task (message : Message , state : FSMContext ):
78- await complete_task_command (message , state )
79-
8069@dp .message (lambda m : m .text == BUTTON_TOGGLE_STATUS )
81- async def toggle_task_status (message : Message , state : FSMContext ):
70+ async def complete_task (message : Message , state : FSMContext ):
8271 await complete_task_command (message , state )
8372
84- @dp .message (lambda m : m .text == BUTTON_ALL_TASKS )
85- async def show_all_tasks (message : Message ):
86- await tasks_show_command (message )
87-
88- @dp .message (lambda m : m .text == BUTTON_DELETE_TASK )
89- async def delete_task (message : Message , state : FSMContext ):
90- await delete_task_command (message , state )
91-
9273@dp .message (Command ("droptask" ))
74+ @dp .message (lambda m : m .text == BUTTON_DELETE_TASK )
9375async def drop_task (message : Message , state : FSMContext ):
9476 await delete_task_command (message , state )
9577
9678@dp .message (Command ("updatetask" ))
97- async def update_task (message : Message , state : FSMContext ):
98- await update_task_command (message , state )
99-
10079@dp .message (lambda m : m .text == BUTTON_EDIT_TASK )
101- async def edit_task (message : Message , state : FSMContext ):
80+ async def update_task (message : Message , state : FSMContext ):
10281 await update_task_command (message , state )
10382
104- @dp .message (lambda m : m .text == BUTTON_SETTINGS )
105- async def settings (message : Message ):
106- await setting_menu_command (message )
107-
10883@dp .message (Command ("settings" ))
84+ @dp .message (lambda m : m .text == BUTTON_SETTINGS )
10985async def settings (message : Message ):
11086 await setting_menu_command (message )
11187
112- @dp .message (Command ("routinetime" ))
113- async def waketime (message : Message ):
114- await routine_time_command (message )
115-
116- @dp .message (lambda m : m .text == SETTINGS_BUTTON_ROUTINE_TIME )
117- async def waketime (message : Message ):
118- await routine_time_command (message )
119-
120- @dp .message (lambda m : m .text == ROUTINE_MY_TIME )
121- async def my_routine_time (message : Message ):
122- await routine_time_command (message )
123-
124- @dp .message (Command ("setwake" ))
125- async def set_waketime (message : Message , state : FSMContext ):
126- await set_wake_time_command (message , state )
127-
12888@dp .message (Command ("time" ))
89+ @dp .message (lambda m : m .text == ROUTINE_MY_TIME )
90+ @dp .message (lambda m : m .text == SETTINGS_BUTTON_ROUTINE_TIME )
12991async def my_routine_time (message : Message ):
13092 await routine_time_command (message )
13193
132- @dp .message (Command ("setsleep" ))
133- async def set_sleep_time (message : Message , state : FSMContext ):
134- await set_sleep_time_command (message , state )
135-
13694@dp .message (lambda m : m .text == ROUTINE_SET_SLEEP_BUTTON )
13795async def set_sleep_time (message : Message , state : FSMContext ):
13896 await set_sleep_time_command (message , state )
@@ -142,9 +100,6 @@ async def set_waketime(message: Message, state: FSMContext):
142100 await set_wake_time_command (message , state )
143101
144102@dp .message (Command ("routine" ))
145- async def routine (message : Message ):
146- await routine_menu_command (message )
147-
148103@dp .message (lambda m : m .text == SETTINGS_BUTTON_ROUTINE )
149104async def routine (message : Message ):
150105 await routine_menu_command (message )
@@ -156,15 +111,9 @@ async def morning_add(message: Message, state: FSMContext):
156111 await set_morning_routine (message , state )
157112
158113@dp .message (Command ("morning_routines" ))
159- async def morning_routines (message : Message ):
160- await show_morning_routines (message )
161-
162114@dp .message (lambda m : m .text == ROUTINE_MORNING_VIEW )
163- async def morning_routines_view (message : types .Message ):
164- await show_morning_routines (message )
165-
166115@dp .message (lambda m : m .text == MY_MORNING_ROUTINE_BTN )
167- async def morning_routines_show (message : types . Message ):
116+ async def morning_routines (message : Message ):
168117 await show_morning_routines (message )
169118
170119@dp .message (lambda m : m .text == MORNING_ROUTINE_DELETE_BTN )
@@ -197,25 +146,21 @@ async def evening_routines_edit(message: types.Message, state: FSMContext):
197146 await state .update_data (routine_type = "evening" )
198147 await update_morning_routine (message , state , type = "evening" )
199148
200- @dp .message (lambda m : m .text == MY_EVENING_ROUTINE_BTN )
201- async def evening_routines_show (message : types .Message ):
202- await show_evening_routines (message )
203-
204149@dp .message (Command ("evening_routines" ))
150+ @dp .message (lambda m : m .text == ROUTINE_EVENING_VIEW )
151+ @dp .message (lambda m : m .text == MY_EVENING_ROUTINE_BTN )
205152async def morning_routines (message : Message ):
206153 await show_evening_routines (message )
207154
208155@dp .message (Command ("feedback" ))
209- async def feedback (message : Message , state : FSMContext ):
210- await send_feedback_command (message , state )
211-
212156@dp .message (lambda m : m .text == SETTINGS_BUTTON_FEEDBACK )
213157async def feedback (message : Message , state : FSMContext ):
214158 await send_feedback_command (message , state )
215159
216- @dp .message (lambda m : m .text == ROUTINE_EVENING_VIEW )
217- async def evening_routines_view (message : types .Message ):
218- await show_evening_routines (message )
160+ @dp .message (Command ("myday" ))
161+ @dp .message (lambda m : m .text == BUTTON_MYDAY )
162+ async def my_day ():
163+ pass
219164
220165@dp .callback_query (F .data .in_ ({"morning_view" , "evening_view" }))
221166async def callback_routine (callback_query : CallbackQuery ):
@@ -235,50 +180,7 @@ async def callback_idea(callback_query: CallbackQuery, state: FSMContext):
235180
236181@dp .message ()
237182async def process_fallback (message : Message , state : FSMContext ):
238- current_state = await state .get_state ()
239- print (f"-- [DEBUG] - Current state: { current_state } " )
240- if current_state == DialogStates .waiting_for_idea .state :
241- await process_idea_save (message , state )
242- elif current_state == DialogStates .delete_idea .state :
243- await process_idea_delete (message , state )
244- elif current_state == DialogStates .update_idea .state :
245- await process_idea_update (message , state )
246- elif current_state == DialogStates .waiting_for_update_text :
247- await process_save_updated_idea_text (message , state )
248- elif current_state == DialogStates .confirm_task :
249- await process_task_save (message , state )
250- elif current_state == DialogStates .task_deadline :
251- await process_task_deadline (message , state )
252- elif current_state == DialogStates .delete_task :
253- await process_task_delete (message , state )
254- elif current_state == DialogStates .complete_task :
255- await process_task_complete (message , state )
256- elif current_state == DialogStates .update_task_id :
257- await process_task_update (message , state )
258- elif current_state == DialogStates .update_task_name :
259- await process_save_updated_task_name (message , state )
260- elif current_state == DialogStates .set_wake_time :
261- await process_set_wake_time (message , state )
262- elif current_state == DialogStates .set_sleep_time :
263- await process_set_sleep_time (message , state )
264- elif current_state == DialogStates .add_morning_routine :
265- data = await state .get_data ()
266- routine_type = data .get ("routine_type" , "morning" )
267- await process_set_routine (message , state , type = routine_type )
268- elif current_state == DialogStates .delete_morning_routine :
269- data = await state .get_data ()
270- routine_type = data .get ("routine_type" , "morning" )
271- await process_delete_morning_routine (message , state , type = routine_type )
272- elif current_state == DialogStates .update_morning_routine :
273- data = await state .get_data ()
274- routine_type = data .get ("routine_type" , "morning" )
275- await process_save_updated_morning_routine (message , state , type = routine_type )
276- elif current_state == DialogStates .update_morning_routine_id :
277- data = await state .get_data ()
278- routine_type = data .get ("routine_type" , "morning" )
279- await process_update_morning_routine (message , state , type = routine_type )
280- elif current_state == DialogStates .feedback_message :
281- await process_feedback_message (message , state )
183+ await fallback (message , state )
282184
283185# Main Function
284186async def main ():
0 commit comments