o
    i                  	   @   sx   d dl Z d dlmZmZ d dlZdddddZdddd	d
ddddZdd Zdd ZedddZdZ	dd Z
dd ZdS )    N)datetime	timedeltahhmmss)z%H%Iz%Mz%Syyyyyymmmmmmmddddddddd)z%Yz%yz%mz%bz%Bz%dz%az%Ac                 C   s   d}g }t d| D ]}|d}t|}|r|| |dks%|dkr'd}q
t d| }|r5|dnd}|||r@d	 S d
 S )z<Convert a strftime format to a spreadsheet time format.
    F(%.)   r   z%pTz(:| ):z a )refinditergroup)strftime_to_spreadsheet_time_format_tablegetappendsearchjoin)strf_formattwelve_hour_systempartspartsymbolspreadsheet_symbol	separator r"   D/home/minischoggi19/odoo/odoo/addons/spreadsheet/utils/formatting.py*strftime_format_to_spreadsheet_time_format   s   


r$   c                 C   s`   g }t d| D ]}|d}t|}|r|| qt d| }|r)|dnd}||S )z<Convert a strftime format to a spreadsheet date format.
    r   r   z(/|-| )/)r   r   r   (strftime_to_spreadsheet_dateformat_tabler   r   r   r   )r   r   r   r   r    r!   r"   r"   r#   *strftime_format_to_spreadsheet_date_format-   s   



r'   ik        iQ c                 C   sF   t |}| |}| tdd }|  | }|t  }|t S )Nr   )seconds)pytztimezone
astimezone	utcoffsetr   	timestampINITIAL_1900_DAYSECONDS_PER_DAY)dttz_name
context_tzlocalized_datetimeoffsetr/   deltar"   r"   r#   #datetime_to_spreadsheet_date_numberA   s   

r8   c                 C   s*   t | t j }| t  }|t S )N)r   combinemintimer/   r0   r1   )dr2   r7   r"   r"   r#   date_to_spreadsheet_date_numberK   s   r=   )r   r   r   r+   r   r&   r$   r'   r0   r1   r8   r=   r"   r"   r"   r#   <module>   s.    
