o
    pi                     @   s   d dl Z d dlZd dlmZmZ d dlmZmZmZm	Z	 d dl
mZmZmZ e eZeddZdZded	efd
dZded	efddZded	efddZded	efddZeejdkdefddZdS )    N)RouterF)CallbackQueryMessageInlineKeyboardMarkupInlineKeyboardButton)get_user_languageget_language_textget_button_textmy_order)namezmenu:button9langreturnc              
   C   s   d}z@ddl m} t|}| }|d| f | }|  |r:|d r=t|d 	 r@t|d 	 }W |S W |S W |S W |S  t
y` } ztd|  d|  W Y d}~|S d}~ww )u3   Получает текст кнопки назадu   ⬅️ Назадr   )MENU_DBz+SELECT button9 FROM language WHERE name = ?z get_button9_text error for lang=: N)dbr   sqlite3connectcursorexecutefetchoneclosestrstrip	Exceptionloggererror)r   labelr   conncurrowe r"   D/var/www/www-root/data/www/magazinbotpanel.site/handlers/my_order.pyget_button9_text   s,   
 r$   c                 C   s   t tt| tdggdS )u@   Создает клавиатуру с кнопкой назад)textcallback_data)inline_keyboard)r   r   r$   BACK_CB)r   r"   r"   r#   build_back_keyboard   s   r)   
product_idc              
   C   s   z+t d}| }|d| f | }|  |r&|d r&t|d W S d|  W S  tyM } zt	d|  d|  d|  W  Y d}~S d}~ww )u>   Получает название товара по product_iddata.dbz6SELECT product_name FROM products WHERE product_id = ?r   u   Товар #z"Error getting product name for id r   N)
r   r   r   r   r   r   r   r   r   r   )r*   r   r   r    r!   r"   r"   r#   get_product_name$   s   
r,   user_idc              
   C   sv   zt d}| }|d| f | }|  |W S  ty: } ztd|  d|  g W  Y d}~S d}~ww )u=   Получает все заказы пользователяr+   z
            SELECT product_id, order_date, order_time 
            FROM orders 
            WHERE order_user_id = ? 
            ORDER BY order_date DESC, order_time DESC
        zError getting user orders for r   N)	r   r   r   r   fetchallr   r   r   r   )r-   r   r   ordersr!   r"   r"   r#   get_user_orders3   s   
r0   zmenu:button3cbc                    sD  | j j}t|}z
| j I dH  W n	 ty   Y nw t|}|s@t|dp)d}| jj|t	|dI dH  |  I dH  dS t|dpFd}|dg}|D ]/}|d }|d	 }	|d
 }
t
|}|d|  |d|	  |d|
  |d qM|d dkr|  d|}| jj|t	|dI dH  |  I dH  dS )u:   
    Открывает мои заказы (button3)
    Ntext25u(   У вас пока нет заказов)reply_markuptext30u   Ваши заказы: r         u   📦 u   📅 Дата: u   ⏰ Время: z---------------
)	from_useridr   messagedeleter   r0   r	   answerr)   r,   appendpopjoin)r1   r-   r   r/   r2   r4   message_linesorderr*   
order_date
order_timeproduct_nameorders_messager"   r"   r#   open_my_ordersE   s<   
rH   )loggingr   aiogramr   r   aiogram.typesr   r   r   r   r   r   r	   r
   	getLogger__name__r   routerr(   r   r$   r)   intr,   listr0   callback_querydatarH   r"   r"   r"   r#   <module>   s    

