class TextMatch(ValuedBaseElement): tag = ns("C", "text-match") def __init__(self, value, collation="i;octet", negate=False): super(TextMatch, self).__init__(value=value) self.attributes['collation'] = collation if negate: self.attributes['negate-condition'] = "yes"
class Expand(BaseElement): tag = ns("C", "expand") def __init__(self, start, end=None): super(Expand, self).__init__() self.attributes['start'] = start.strftime("%Y%m%dT%H%M%SZ") if end is not None: self.attributes['end'] = end.strftime("%Y%m%dT%H%M%SZ")
class Expand(BaseElement): tag = ns("C", "expand") def __init__(self, start, end=None): super(Expand, self).__init__() if start is not None: self.attributes['start'] = _to_utc_date_string(start) if end is not None: self.attributes['end'] = _to_utc_date_string(end)
class TimeRange(BaseElement): tag = ns("C", "time-range") def __init__(self, start=None, end=None): super(TimeRange, self).__init__() if start is not None: self.attributes['start'] = start.strftime("%Y%m%dT%H%M%SZ") if end is not None: self.attributes['end'] = end.strftime("%Y%m%dT%H%M%SZ")
class TimeRange(BaseElement): tag = ns("C", "time-range") def __init__(self, start=None, end=None): ## start and end should be an icalendar "date with UTC time", ## ref https://tools.ietf.org/html/rfc4791#section-9.9 super(TimeRange, self).__init__() if start is not None: self.attributes['start'] = _to_utc_date_string(start) if end is not None: self.attributes['end'] = _to_utc_date_string(end)
class MaxAttendeesPerInstance(ValuedBaseElement): tag = ns("C", "max-attendees-per-instance")
class Propfind(BaseElement): tag = ns("D", "propfind")
class CalendarData(BaseElement): tag = ns("C", "calendar-data")
class ParamFilter(NamedBaseElement): tag = ns("C", "param-filter")
class CompFilter(NamedBaseElement): tag = ns("C", "comp-filter")
class Mkcalendar(BaseElement): tag = ns("C", "mkcalendar")
class CalendarTimeZone(ValuedBaseElement): tag = ns("C", "calendar-timezone")
class CalendarDescription(ValuedBaseElement): tag = ns("C", "calendar-description")
class Calendar(BaseElement): tag = ns("C", "calendar")
class CalendarHomeSet(BaseElement): tag = ns("C", "calendar-home-set")
class Comp(NamedBaseElement): tag = ns("C", "comp")
class CalendarQuery(BaseElement): tag = ns("C", "calendar-query")
class SupportedCalendarComponentSet(ValuedBaseElement): tag = ns("C", "supported-calendar-component-set")
class FreeBusyQuery(BaseElement): tag = ns("C", "free-busy-query")
class SupportedCalendarData(ValuedBaseElement): tag = ns("C", "supported-calendar-data")
class Filter(BaseElement): tag = ns("C", "filter")
class MaxResourceSize(ValuedBaseElement): tag = ns("C", "max-resource-size")
class PropFilter(NamedBaseElement): tag = ns("C", "prop-filter")
class MinDateTime(ValuedBaseElement): tag = ns("C", "min-date-time")
class Status(BaseElement): tag = ns("D", "status")
class Response(BaseElement): tag = ns("D", "response")
class NotDefined(BaseElement): tag = ns("C", "is-not-defined")
class MaxInstances(ValuedBaseElement): tag = ns("C", "max-instances")
class MaxDateTime(ValuedBaseElement): tag = ns("C", "max-date-time")
class CurrentUserPrincipal(BaseElement): tag = ns("D", "current-user-principal")