HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/utils/__pycache__/namecheap.cpython-310.pyc
o

�N�gD�@s�dZddlZddlZddlZzddlZdZWney!dZYnwe�	e
�Zdadd�Z
dd�Zd	d
�Zdd�Zd
d�Zdd�Zdd�Zdd�ZdS)aM
 Namecheap Management library of common functions used by
 all the namecheap execution modules

 Installation Prerequisites
 --------------------------

 - This module uses the following python libraries to communicate to
   the namecheap API:

        * ``requests``
        .. code-block:: bash

            pip install requests

�NTFcCstsdStstj�t�adS)N)FzMMissing dependency: 'requests'. The namecheap utils module cannot be loaded. T)�HAS_REQUESTS�__salt__�salt�loaderZminion_modsZ__opts__�rr�H/opt/saltstack/salt/lib/python3.10/site-packages/salt/utils/namecheap.py�__virtual__$s
rcC� tdd�}ttj||dd��S)N�
config.option�
namecheap.url�-)�data�timeout)r�_handle_request�requestsZpost��optsZ
namecheap_urlrrr�post_request1�rcCr	)Nr
rr)�paramsr)rrr�getrrrr�get_request6rrcCs�|��|jdkrt�t|��tt|���tjj�	|j
�}|�d�d}|�d�dkrWg}|�d�d}|�d�D]	}|�
|jj�q:d�|�}t�|�t�|�t|��|S)	Ni+ZApiResponserZStatus�ERRORZErrors�Error�)�closeZstatus_code�log�error�str�	Exception�xmlZdomZminidomZparseString�textZgetElementsByTagNameZgetAttribute�append�
firstChildr
�join�info)�rZresponse_xmlZapiresponser
�errors�errrrr;s 



rcs��j�jkr	�jSt��}t�fdd��jD��dkrIt|�dkr6�jdur4t�jj�dkr4�jj|d<|S�jdurGt�jj�dkrG�jjSdS�jjdkr^�jdj�jkr^�jdjS�jD]m}|j�jkr��j�	�|vr�|�j�	�}t
|t�s�|g}|}|�|j�||�j�	�<qa|j|�j�	�<qa|j�j
kr�|j�	�|vr�||j�	�}t
|t�s�|g}|}|�t|��|||j�	�<qat|�||j�	�<qa|S)Ncsg|]
}|j�jkr|�qSr)�nodeType�	TEXT_NODE)�.0�n�r rr�
<listcomp>Vszxml_to_dict.<locals>.<listcomp>rr
�)r)ZCDATA_SECTION_NODEr
�atts_to_dict�lenZ
childNodesr#�lengthZtagName�lower�
isinstance�listr"r*�xml_to_dict)r �resultr,�val�temprr-rr6RsF$�


�r6cCs6i}|jdur|j��D]\}}t|�||��<q|S)N)Z
attributes�items�string_to_valuer3)r r7�key�valuerrrr0�s

r0cCsv|��}d}|dkrd}|S|dkrd}|Szt|�}W|Sty:zt|�}WY|Sty9|}YY|Sww)N�trueT�falseF)r3�int�
ValueError�float)r=r9r7rrrr;�s(�
�
����r;cCsPi}tdd�|d<tdd�|d<tdd�|d<tdd�|d	<||d
<|S)Nr
znamecheap.nameZApiUserznamecheap.userZUserNamez
namecheap.keyZApiKeyznamecheap.client_ipZClientIpZCommand)r)Zcommandrrrr�get_opts�srC)�__doc__�loggingZxml.dom.minidomr Zsalt.loaderrrr�ImportError�	getLogger�__name__rrrrrrr6r0r;rCrrrr�<module>s(�

.