
    PIig'                     X    d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 	  G d de      Z
y)	    )AbstractObject)AbstractCrudObject)ObjectParser)FacebookRequest)TypeCheckerc            	            e Zd Zd fd	Z G d dej
                        Z G d d      Zed        ZddZ	ddZ
dd	Zdd
ZddZddZddZdddddddddZed        Z xZS )
SystemUserc                 >    d| _         t        t        |   |||       y )NT)_isSystemUsersuperr	   __init__)selffbid	parent_idapi	__class__s       t/var/www/webhook.estador.de/web/meta/bot/venv/lib/python3.12/site-packages/facebook_business/adobjects/systemuser.pyr   zSystemUser.__init__   s    !j$(y#>    c                   ,    e Zd ZdZdZdZdZdZdZdZ	dZ
y	)
SystemUser.Field
created_bycreated_timefinance_permissionidip_permissionnamerolesystem_user_idN)__name__
__module____qualname__r   r   r   r   r   r   r   r    r   r   Fieldr      s+    !
%1')r   r#   c                   H    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZy)SystemUser.RoleADMINADS_RIGHTS_REVIEWERDEFAULT	DEVELOPEREMPLOYEEFINANCE_ANALYSTFINANCE_EDITFINANCE_EDITORFINANCE_VIEWMANAGEPARTNER_CENTER_ADMINPARTNER_CENTER_ANALYSTPARTNER_CENTER_EDUCATIONPARTNER_CENTER_MARKETINGPARTNER_CENTER_OPERATIONSN)r   r    r!   adminads_rights_reviewervalue_default	developeremployeefinance_analystfinance_editfinance_editorfinance_viewmanagepartner_center_adminpartner_center_analystpartner_center_educationpartner_center_marketingpartner_center_operationsr"   r   r   Roler%   '   sS    3!	+%)%5!9#= #= $?!r   rD   c                      y)Nsystem_usersr"   )clss    r   get_endpointzSystemUser.get_endpoint9   s    r   c                 ^    ddl m}  || j                  |      j                  ||||||      S )Nr   )Business)r   r   )$facebook_business.adobjects.businessrJ   _apicreate_system_user)	r   r   fieldsparamsbatchsuccessfailurependingrJ   s	            r   
api_createzSystemUser.api_create>   s0    ADIII6II&RXZ_ahjqsz{{r   c                 p   ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        |       	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   	api_utils:`success` and `failure` callback only work for batch call.r   GET/NODE)reuse_objectnode_idmethodendpointr   param_checkertarget_classapi_typeresponse_parserrQ   rR   )facebook_business.utilsrW   warningr   rL   r   r	   r   
add_params
add_fieldsadd_to_batchassure_callexecute)r   rN   rO   rP   rQ   rR   rS   rW   param_typesenumsrequests              r   api_getzSystemUser.api_getB   s    5=g1W5H


X
Y

!J		%k59#(d;	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} i }	i }
t        | d   dd| j                  t        |	|
      |dt        || j                  	      
      }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   rV   rX   )	AdAccountr   rY   z/assigned_ad_accountsEDGErb   r   r]   re   )rf   rW   rg   %facebook_business.adobjects.adaccountrr   r   rL   r   r   rh   ri   rj   rk   rl   )r   rN   rO   rP   rQ   rR   rS   rW   rr   rm   rn   ro   s               r   get_assigned_ad_accountsz#SystemUser.get_assigned_ad_accounts`   s    5=g1W5H


X
YC

!J,		%k59"(iTYYO	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} ddi}	i }
t        | d   dd	| j                  t        |	|
      |d
t        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   rV   rX   )BusinessAssetGroupcontained_asset_idstringr   rY   z/assigned_business_asset_groupsrs   rt   r]   re   )rf   rW   rg   .facebook_business.adobjects.businessassetgrouprx   r   rL   r   r   rh   ri   rj   rk   rl   )r   rN   rO   rP   rQ   rR   rS   rW   rx   rm   rn   ro   s               r   "get_assigned_business_asset_groupsz-SystemUser.get_assigned_business_asset_groups   s    5=g1W5H


X
YU (

!J6		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} ddi}	i }
t        | d   dd	| j                  t        |	|
      |d
t        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   rV   rX   )Pagepageszlist<unsigned int>r   rY   z/assigned_pagesrs   rt   r]   re   )rf   rW   rg    facebook_business.adobjects.pager~   r   rL   r   r   rh   ri   rj   rk   rl   )r   rN   rO   rP   rQ   rR   rS   rW   r~   rm   rn   ro   s               r   get_assigned_pageszSystemUser.get_assigned_pages   s    5=g1W5H


X
Y9)

!J&		%k59(d		J	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} i }	i }
t        | d   dd| j                  t        |	|
      |dt        || j                  	      
      }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   rV   rX   )ProductCatalogr   rY   z/assigned_product_catalogsrs   rt   r]   re   )rf   rW   rg   *facebook_business.adobjects.productcatalogr   r   rL   r   r   rh   ri   rj   rk   rl   )r   rN   rO   rP   rQ   rR   rS   rW   r   rm   rn   ro   s               r   get_assigned_product_catalogsz(SystemUser.get_assigned_product_catalogs   s    5=g1W5H


X
YM

!J1		%k59'(n$))T	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} i }	i }
t        | d   dd| j                  t        |	|
      |dt        || j                  	      
      }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   rV   rX   )WhatsAppBusinessAccountr   rY   z$/assigned_whatsapp_business_accountsrs   rt   r]   re   )rf   rW   rg   3facebook_business.adobjects.whatsappbusinessaccountr   r   rL   r   r   rh   ri   rj   rk   rl   )r   rN   rO   rP   rQ   rR   rS   rW   r   rm   rn   ro   s               r   (get_assigned_whats_app_business_accountsz3SystemUser.get_assigned_whats_app_business_accounts   s    5=g1W5H


X
Y_

!J;		%k590(6MSWS\S\]	
 	6"6"   INN??$$r   Userdatetimerz   int)r   r   r   r   r   r   r   r   c                 `    i }t         j                  j                  j                         |d<   |S )NrD   )r	   rD   __dict__values)rG   field_enum_infos     r   _get_field_enum_infozSystemUser._get_field_enum_info  s*    ",//":":"A"A"Cr   )NNN)NNNNNF)r   r    r!   r   r   r#   rD   classmethodrH   rT   rp   rv   r|   r   r   r   _field_typesr   __classcell__)r   s   @r   r	   r	      s    ?*$$ *@ @$  |%<%>%@%@%>%@ "&!	L  r   r	   N)*facebook_business.adobjects.abstractobjectr   .facebook_business.adobjects.abstractcrudobjectr   (facebook_business.adobjects.objectparserr   facebook_business.apir   facebook_business.typecheckerr   r	   r"   r   r   <module>r      s+    F M A 1 5vvr   