o
     h"                     @   sF   d dl mZmZmZmZ d dlmZmZ dd Zdd Zd
dd	Z	dS )    )get_all_entriesget_all_published_entries update_entry_using_json_responsepublish_entry)datetimetimezonec                 C   s   | d d }| d }| d }d|v r>d|v r>|d d }d }d|v r(|d d }t ||}||d d< ||d	}td
||S | S )Nsysidfieldsmetadata	startDateupcomingSortOrderen-USendDater
   r   event)calculate_sort_orderr   )r   Zevent_entry_idZevent_entry_fieldsZevent_entry_metadata
start_dateend_dateupcoming_sort_orderZevent_state r   L/home/cmiss/Jenkins/workspace/SPARC-API/scripts/update_contentful_entries.pyupdate_event_sort_order   s   
r   c                  C   sp  t d} td}i }|D ]}|d d }|||< q| D ]}|d }|d }d|v rd|v r|d d r|d d }d}	d}
d	|d v rcd
}
t|d d d}t|d d	 d}||  dkrcd
}	|d d }d }d|v ru|d d }t||}||d d< |
r|| d }||d d< ||| d d}td||}t||d d  |	s|
s||d}td|| qd S )Nr   r   r	   r
   r   r   r   FpublishedAtT	updatedAtz%Y-%m-%dT%H:%M:%S.%fZr   r   r   r   version)r   r   r   strptimetotal_secondsr   r   r   )Zall_event_entriesZall_published_event_entriesZ$published_event_id_to_fields_mappingZpublished_eventZpublished_event_identryZoriginal_fields_dictZoriginal_metadata_dictentry_idZentry_had_existing_changesZentry_is_publishedZentry_updated_atZentry_published_atr   r   r   Zpublished_fields_stateZupdated_stateZupdated_entryZoriginal_stater   r   r   update_all_events_sort_order   sP   


r    Nc                 C   s   t | tj}t  tj}||  }t|d }d}|dkr'd| }|dk rT|d u r3|}|S t |tj}||  }t|d }	|	dk }
|
sRd}|S |}|S )NiQ g?r      )r   fromisoformat
astimezoner   utcnowr   int)r   r   Zstart_date_datetimer%   Ztime_from_event_in_secondsZtime_from_event_in_daysr   Zend_date_datetimeZend_time_from_now_in_secondsZend_time_from_now_in_daysZhas_event_endedr   r   r   r   F   s(   r   )N)
app.metrics.contentfulr   r   r   r   r   r   r   r    r   r   r   r   r   <module>   s
    /