
    iy                        d dl mZ d dlmZ d dlmZ d dlmZmZ d dl	m
Z
mZ d dlmZ  e       Z G d de      Zej!                  d	 ee      g
       e e
d            fdefd       Zej%                  d      d        Zy)    )	BaseModel)Optional)BannerModel)	APIRouterDepends)requires_permissionassert_actor_match)verify_turnstilec                       e Zd ZU eed<   dZee   ed<   dZee   ed<   dZee   ed<   dZ	ee   ed<   dZ
ee   ed<   eed<   y	)
UpdateBannerPayloadbannerId titlesubtitlebadgectaTextimageUrlactorIdN)__name__
__module____qualname__str__annotations__r   r   r   r   r   r        2/var/www/pod-logistic/pod-api/controller/banner.pyr   r      sR    ME8C= Hhsm E8C=GXc] Hhsm Lr   r   z/update-banner)dependenciesproduct_managementpayloadc                 n  K   	 |d   }|j                  dd      }t        || j                         t        j                  | j
                  | j                  | j                  | j                  | j                  | j                        }d|||ddS # t        $ r}dt        |      d	cY d }~S d }~ww xY ww)
Nidnamer   )	banner_idr   r   r   cta_text	image_urlT)r!   r"   )successdataactedByFr&   message)getr	   r   r   update_bannerr   r   r   r   r   r   	Exceptionr   )r   current_useractor_id
actor_nameupdated_banneres         r   update_banner_endpointr3      s     
5%!%%fb1
<9$22&&--%%--__&&
 ""
 	
  5 SV445s5   B5BB B5	B2B-'B2(B5-B22B5z/bannersc                     K   	 t        j                         } d| dS # t        $ r}dt        |      dcY d }~S d }~ww xY ww)NT)r&   r'   Fr)   )r   get_all_bannersr-   r   )bannersr2   s     r   get_banners_endpointr7   5   sB     5--/11 5 SV445s(   A A	>9>A>AN)pydanticr   typingr   model.bannerr   fastapir   r   utils.auth_helperr   r	   utils.turnstile_helperr
   routerr   putr3   r+   r7   r   r   r   <module>r@      s      $ & E 3 
)  G4D,E+FG ./CDE5 5 H5< J5 5r   