
    PIi-                     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 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ddddZed        Z xZS )AdRulec                 >    d| _         t        t        |   |||       y )NT)	_isAdRulesuperr	   __init__)selffbid	parent_idapi	__class__s       p/var/www/webhook.estador.de/web/meta/bot/venv/lib/python3.12/site-packages/facebook_business/adobjects/adrule.pyr   zAdRule.__init__   s    fd$T9c:    c                   <    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y)AdRule.Field
account_id
created_bycreated_timedisable_error_codeevaluation_specexecution_specidnameschedule_specstatusupdated_timeui_creation_sourceN)__name__
__module____qualname__r   r   r   r   r   r   r   r   r   r    r!   r"    r   r   Fieldr      s@    !
!
%1+)'%1r   r'   c                       e Zd ZdZdZdZdZy)AdRule.StatusDELETEDDISABLEDENABLED
HAS_ISSUESN)r#   r$   r%   deleteddisabledenabled
has_issuesr&   r   r   Statusr)   +   s    !
r   r2   c                       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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) AdRule.UiCreationSource#AM_ACCOUNT_OVERVIEW_RECOMMENDATIONSAM_ACTIVITY_HISTORY_TABLEAM_AD_OBJECT_NAME_CARDAM_AMFE_L3_RECOMMENDATIONAM_AUTOFLOW_GUIDANCE_CARDAM_AUTO_APPLY_WIDGETAM_EDITOR_CARDAM_INFO_CARDAM_NAME_CELL_DROPDOWN!AM_OPTIMIZATION_TIP_GUIDANCE_CARDAM_PERFORMANCE_SUMMARYAM_RULE_LANDING_PAGE_BANNERAM_SYD_RESOLUTION_FLOWAM_SYD_RESOLUTION_FLOW_MODAL AM_TABLE_DELIVERY_COLUMN_POPOVERAM_TABLE_MORE_RULES_DROPDOWNAM_TABLE_TOGGLE_POPOVERAM_TOOLBAR_CREATE_RULE_DROPDOWNPE_CAMPAIGN_STRUCTURE_MENUPE_EDITOR_CARDPE_INFO_CARDPE_TOOLBAR_CREATE_RULE_DROPDOWN%RULES_MANAGEMENT_PAGE_ACTION_DROPDOWN RULES_MANAGEMENT_PAGE_RULE_GROUPRULES_MANAGEMENT_PAGE_RULE_NAMERULES_MANAGEMENT_PAGE_TOP_NAVRULES_VIEW_ACTIVE_RULES_DIALOGRULE_CREATION_SUCCESS_DIALOGRULE_SYD_REDIRECTRULE_TEMPLATES_DIALOGN)!r#   r$   r%   #am_account_overview_recommendationsam_activity_history_tableam_ad_object_name_cardam_amfe_l3_recommendationam_autoflow_guidance_cardam_auto_apply_widgetam_editor_cardam_info_cardam_name_cell_dropdown!am_optimization_tip_guidance_cardam_performance_summaryam_rule_landing_page_banneram_syd_resolution_flowam_syd_resolution_flow_modal am_table_delivery_column_popoveram_table_more_rules_dropdownam_table_toggle_popoveram_toolbar_create_rule_dropdownpe_campaign_structure_menupe_editor_cardpe_info_cardpe_toolbar_create_rule_dropdown%rules_management_page_action_dropdown rules_management_page_rule_grouprules_management_page_rule_namerules_management_page_top_navrules_view_active_rules_dialogrule_creation_success_dialogrule_syd_redirectrule_templates_dialogr&   r   r   UiCreationSourcer4   1   s    .S+$?!!9$?!$?!5)% 7,O)!9&C#!9'E$+M('E$";*K'%A")%*K'0W-+M(*K'(G%)I&'E$/ 7r   rq   c                      y)Nadrules_libraryr&   )clss    r   get_endpointzAdRule.get_endpointR   s     r   c                 ^    ddl m}  || j                  |      j                  ||||||      S )Nr   )	AdAccount)r   r   )%facebook_business.adobjects.adaccountrw   _apicreate_ad_rules_library)	r   r   fieldsparamsbatchsuccessfailurependingrw   s	            r   
api_createzAdRule.api_createW   s;    CTYYY7OOPVX^`egnpw  zA  B  	B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   DELETE/NODEreuse_objectnode_idmethodendpointr   param_checkertarget_classapi_typeresponse_parserr~   r   facebook_business.utilsr   warningr   ry   r   r   r   
add_params
add_fieldsadd_to_batchassure_callexecuter   r{   r|   r}   r~   r   r   r   param_typesenumsrequests              r   
api_deletezAdRule.api_delete[   s    5=g1W5H


X
Y

!J		%k59+(d;	
 	6"6"   INN??$$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   r   r   r   GETr   r   r   r   r   r   r   r   r   ry   r   r	   r   r   r   r   r   r   r   s              r   api_getzAdRule.api_gety   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dddd}dt        j                  j
                  j                         i}	t        | d   d	d
| j                  t        ||	      t        dt        |             }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r   r   Objectstringstatus_enum)r   r   r   r   r    r   POSTr   r   r   r   r   )r   r   r   r	   r2   __dict__valuesr   ry   r   r   r   r   r   r   r   r   s              r   
api_updatezAdRule.api_update   s    5=g1W5H


X
Y'&%#
 6==1188:
 "J		%k59(d;	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r   r   r   r   z/executeEDGEr   r   r   r   r   r   s              r   create_executezAdRule.create_execute   s    5=g1W5H


X
Y

!J		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} dddd}	d|j
                  j                  j                         i}
t        | d	   d
d| j                  t        |	|
      |dt        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j!                         S )Nr   r   r   )AdRuleHistoryaction_enumboolr   )actionhide_no_changes	object_idr   r   z/historyr   r   r   r   )r   r   r   )facebook_business.adobjects.adrulehistoryr   Actionr   r   r   ry   r   r   r   r   r   r   r   )r   r{   r|   r}   r~   r   r   r   r   r   r   r   s               r   get_historyzAdRule.get_history   s    5=g1W5H


X
YK#%!
 =//88??A
 "J		%k59&(mS	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r   r   r   r   z/previewr   r   r   r   r   r   s              r   create_previewzAdRule.create_preview   s    5=g1W5H


X
Y

!J		%k59(f$))L	
 	6"6"   INN??$$r   r   UserdatetimeintAdRuleEvaluationSpecAdRuleExecutionSpecAdRuleScheduleSpec)r   r   r   r   r   r   r   r   r   r    r!   r"   c                     i }t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   |S )Nr2   rq   )r	   r2   r   r   rq   )rt   field_enum_infos     r   _get_field_enum_infozAdRule._get_field_enum_info(  sJ    $*MM$:$:$A$A$C!.4.E.E.N.N.U.U.W*+r   )NNN)NNNNNF)r#   r$   r%   r   r   r'   r2   rq   classmethodru   r   r   r   r   r   r   r   _field_typesr   __classcell__)r   s   @r   r	   r	      s    ;2$$ 2" "8 8B ! !B%<%<"%H%<!%F%> "#1/-"0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XXr   