a

����ᷴg��������������������@���sx���d�dl�mZ�d�dlmZmZmZmZmZ�d�dlm	Z	�d�dl
m
Z
mZ�d�dlZd�dl
Z
d�dlZdd„�Zdd	„�Zd
d„�ZdS�)é����)ÚConfig)Úget_cda_client_entryÚ
get_cma_entryÚ update_entry_using_json_responseÚ
publish_entryÚget_cma_published_entry)Úget_all_dataset_ids)ÚdatetimeÚ	timedeltaNc��������������
���C���s ��zèt�jdkrzt�jdkrztt�jƒ}tt�jƒ}d|d�v�rz|d�d�d�}|d�urzt |d¡}|t ¡�� 	¡�dkrzd|d�v�r–g�|d�d�d<�d�|d�d�d<�d|d�v�rÂg�|d�d�d<�d|d�v�rÞd�|d�d�d<�|d�|d	�d
œ}t
dt�j|ƒ}tt�j|d�d
�ƒ�d|d�v�rzt |d�d�d¡}t |d�d�d¡}||� 	¡�dkrz|d�|d	�d
œ}	t
dt�j|	ƒ�t 
d¡�|�d�u�r”W�d�S�t|�ƒ}
tt�jƒ ¡�}t|�|
|ƒ}|rÄt|�ƒ}
t |
d�d¡}
t|
d�ƒ}z|d�}W�n�ty���d}Y�n0�t|ƒd�}t ¡�}||
�t|dk�rH|dkrH|du�rH|W�S�t|
d�ƒdksd|du�r’t|
d�ƒdkrˆ|
d� ¡�|
d<�n
tƒ�|
d<�|
d�}t dt|ƒd�¡}| |¡|
d<�| d¡|
d<�||
d<�|� t�jt  |
¡d¡�W�n0�ty�}�zt!d|ƒ�W�Y�d�}~n
d�}~0�0�d�S�) NÚdevelopmentÚFALSEÚdateToClearFeaturedDatasetsÚfieldszen-USz%Y-%m-%dr���ÚfeaturedDatasetsÚmetadata)r���r���ÚhomepageÚsysÚversionÚpublishedAtÚ	updatedAtz%Y-%m-%dT%H:%M:%S.%fZz/Setting featured dataset id selector state infoÚlast_used_timeú%Y-%m-%d %H:%M:%S.%fÚfeatured_dataset_idÚ
time_deltaé���é���)ÚdayséÿÿÿÿFÚavailable_dataset_idsTÚlimited_available_idsé���z)Error while setting featured dataset id: )"r���Ú
DEPLOY_ENVÚSPARC_API_DEBUGGINGr���ÚCTF_HOMEPAGE_IDr���r	���ÚstrptimeÚnowÚ
total_secondsr���r���ÚloggingÚinfoÚ#get_featured_dataset_id_table_stater���r���Úset_limited_dataset_idsÚintÚ	ExceptionÚfloatr
���ÚlenÚcopyr���ÚrandomÚrandintÚpopÚstrftimeÚupdateStateÚ&FEATURED_DATASET_ID_SELECTOR_TABLENAMEÚjsonÚdumpsÚprint)ÚfeaturedDatasetIdSelectorTableZhomepage_cma_staging_entryZhomepage_cma_published_entryZdate_to_clear_datasetsZdatetime_date_to_clear_datasetsZupdated_published_stateÚ
updated_entryZhomepage_staging_updated_atZhomepage_staging_published_atÚoriginal_stateÚtable_stateZcf_homepage_responseZlimited_ids_were_setr���r���Ztime_delta_in_hoursZtime_delta_in_daysr%���Zavailable_dataset_ids_arrayZrandom_indexÚe©�r>���úM/home/cmiss/Jenkins/workspace/SPARC-API/scripts/update_featured_dataset_id.pyÚset_featured_dataset_id
���sv����


þþ


(
r@���c�����������������C���sf���|d�}z|d�}W�n�t�y*���g�}Y�n0�t|ƒt|ƒkr@dS�||d<�|� tjt |¡d¡�dS�d�S�)Nr���Úfeatured_datasetsFT)r,���Úsetr4���r���r5���r6���r7���)Útabler<���Zcontentful_stateZpersisted_limited_available_idsZupdated_limited_available_idsr>���r>���r?���r*���T���s����
r*���c�����������������C���sp���t� ¡� d¡g�g�ddœ}|�d�u�r$|S�z6|� tj¡}|d�u�rP|� tjt |¡d¡}t 	|¡W�S����|�Y�S�0�d�S�)Nr���r���)r���r���r���r���T)
r	���r%���r3���Ú	pullStater���r5���r4���r6���r7���Úloads)rC���Zdefault_dataÚ
current_stater>���r>���r?���r)���c���s����ûr)���)Ú
app.configr���Úapp.metrics.contentfulr���r���r���r���r���Úapp.metrics.algoliar���r	���r
���r6���r'���r0���r@���r*���r)���r>���r>���r>���r?���Ú<module>���s���J