
    hfy                         d dl mZ d dlmZ d dlmZmZmZ d dlZd dlZdgZ	dZ
ej                  j                  e
e	      Z edd	e
      Z ej                  d      Zd ZddZy)    )service_account)build)datetime	timedeltatimezoneNz(https://www.googleapis.com/auth/calendarz5/var/www/feuerwehr-webapp/static/service_account.json)scopescalendarv3)credentialsEurope/Berlinc                    |j                  t        j                        }|j                  t        j                        }t        j                  d|j                          d|j                          d|j                          d|j                          d	       t        j                         j                  | |j                         |j                         dd      j                         }|j                  dg       }t        j                  d	t        |              |D ]  }|d
   j                  d      }|d   j                  d      }	t        j                  d| d|	        t        j                  |j                  dd            }
t        j                  |	j                  dd            }||k  s||
kD  st        j                  d|d            y y)NzChecking availability from z to z (UTC: )T	startTime)
calendarIdtimeMintimeMaxsingleEventsorderByitemszFound events: startdateTimeendzEvent Start: z, Event End: Zz+00:00zConflict with event: summaryF)
astimezonepytzutcloggingdebug	isoformatserviceeventslistexecutegetformatr   fromisoformatreplace)calendar_id
start_timeend_timestart_time_utcend_time_utcevents_resultr"   eventevent_start	event_endevent_start_dtevent_end_dts               4/var/www/feuerwehr-webapp/modules/google_calendar.pyis_time_slot_availabler5      s   **4884N&&txx0LMM/
0D0D0F/GtHL^L^L`Kaahiw  jB  jB  jD  iE  EI  JV  J`  J`  Jb  Ic  cd  e  fNN$))((*&&( *  gi  w+FMMN6&>"234 Gn((4%L$$Z0	k]-	{KL "//0C0CC0RS--i.?.?X.NO \)l^.KMM1%	2B1CDE     c                 b   t         j                  |      }t         j                  |      }|r|}|j                  |j                  |j                  |j
                        }g }||k  rDt        | ||      r{||j                         dd|j                         ddd}t        j                         j                  | |      j                         }|j                  |j                  d             |t        d      z   }|j                  |j                  |j                  |j
                        }|j                  |j                  |j                  |j
                        }t        j                   d	t#        |      z          t        j                   d
t#        |      z          ||k  rD|r|d fS yt        | ||      sy||j                         dd|j                         ddd}t        j                         j                  | |      j                         }|j                  d      d fS )N)hourminutesecondr   )r   timeZone)r   r   r   )r   bodyhtmlLink   )dayszStart: zEnd: )Nu-   Der gewünschte Zeitraum ist bereits gebucht.)	berlin_tzlocalizer(   r8   r9   r:   r5   r    r!   r"   insertr$   appendr%   r   r   r   r&   )	r)   
event_namer*   r+   	multi_daycurrent_startcurrent_endlinksr/   s	            r4   add_event_to_google_calendarrI   5   s   ##J/J!!(+H" ((hmmHOO\d\k\k(lh&%k=+N)$1$;$;$=$3
 %0$9$9$;$3
  (//;U/S[[]UYYz23)I1,==M)11zzO`O`isiziz1{M'//X]]8??ckcrcr/sKMM)f]&;;<MM'F;$778' h&( $;H%k:xHH "&002+
 %..0+

  '';U'KSSUyy$d**r6   )F)google.oauth2r   googleapiclient.discoveryr   r   r   r   r   r   SCOPESSERVICE_ACCOUNT_FILECredentialsfrom_service_account_filer   r!   r@   r5   rI    r6   r4   <module>rQ      su    ) + 2 2   5	5N ))CC D ) 
Dk
: DMM/*	 D2+r6   