예제 #1
0
 def write_dav(self, vtodo: iCalendar, value: tuple):
     enabled, term = value
     self.clean_dav(vtodo)
     if not enabled:
         return
     assert term in {'day', 'other-day', 'week', 'month', 'year'}
     rrule = vtodo.add(self.dav_name)
     if term == 'other-day':
         rrule.params['FREQ'] = ['DAILY']
         rrule.params['INTERVAL'] = ['2']
     else:
         rrule.params['FREQ'] = [term.upper() + 'LY']
         start_date = DTSTART.get_dav(vtodo=vtodo)
         if term == 'week' and start_date:
             index = int(start_date.dt_value.strftime('%w'))
             rrule.params['BYDAY'] = self.DAV_DAYS[index]
예제 #2
0
 def write_dav(self, vtodo: iCalendar, value):
     self.clean_dav(vtodo)
     vtodo.add(self.dav_name).value = value
예제 #3
0
 def write_dav(self, vtodo: iCalendar, value):
     self.clean_dav(vtodo)
     for related_uid in value:
         related = vtodo.add(self.dav_name)
         related.value = related_uid
         related.params['RELTYPE'] = [self.reltype]
예제 #4
0
 def write_dav(self, vtodo: iCalendar, value):
     """will clean and write new value to vtodo object"""
     self.clean_dav(vtodo)
     vtodo_val = vtodo.add(self.dav_name)
     vtodo_val.value = value
     return vtodo_val