Changeset View
Changeset View
Standalone View
Standalone View
pykolab/xml/event.py
Show First 20 Lines • Show All 548 Lines • ▼ Show 20 Lines | def get_ical_attendee(self): | ||||
partstat = attendee.get_participant_status() | partstat = attendee.get_participant_status() | ||||
cutype = attendee.get_cutype() | cutype = attendee.get_cutype() | ||||
delegators = attendee.get_delegated_from() | delegators = attendee.get_delegated_from() | ||||
delegatees = attendee.get_delegated_to() | delegatees = attendee.get_delegated_to() | ||||
if rsvp in attendee.rsvp_map: | if rsvp in attendee.rsvp_map: | ||||
_rsvp = rsvp | _rsvp = rsvp | ||||
elif rsvp in attendee.rsvp_map.values(): | elif rsvp in attendee.rsvp_map.values(): | ||||
_rsvp = [k for k, v in attendee.rsvp_map.iteritems() if v == rsvp][0] | _rsvp = [k for k, v in attendee.rsvp_map.items() if v == rsvp][0] | ||||
else: | else: | ||||
_rsvp = None | _rsvp = None | ||||
if role in attendee.role_map: | if role in attendee.role_map: | ||||
_role = role | _role = role | ||||
elif role in attendee.role_map.values(): | elif role in attendee.role_map.values(): | ||||
_role = [k for k, v in attendee.role_map.iteritems() if v == role][0] | _role = [k for k, v in attendee.role_map.items() if v == role][0] | ||||
else: | else: | ||||
_role = None | _role = None | ||||
if partstat in attendee.participant_status_map: | if partstat in attendee.participant_status_map: | ||||
_partstat = partstat | _partstat = partstat | ||||
elif partstat in attendee.participant_status_map.values(): | elif partstat in attendee.participant_status_map.values(): | ||||
_partstat = [k for k, v in attendee.participant_status_map.iteritems() if v == partstat][0] | _partstat = [k for k, v in attendee.participant_status_map.items() if v == partstat][0] | ||||
else: | else: | ||||
_partstat = None | _partstat = None | ||||
if cutype in attendee.cutype_map: | if cutype in attendee.cutype_map: | ||||
_cutype = cutype | _cutype = cutype | ||||
elif cutype in attendee.cutype_map.values(): | elif cutype in attendee.cutype_map.values(): | ||||
_cutype = [k for k, v in attendee.cutype_map.iteritems() if v == cutype][0] | _cutype = [k for k, v in attendee.cutype_map.items() if v == cutype][0] | ||||
else: | else: | ||||
_cutype = None | _cutype = None | ||||
_attendee = icalendar.vCalAddress("MAILTO:%s" % email) | _attendee = icalendar.vCalAddress("MAILTO:%s" % email) | ||||
if not name == None and not name == "": | if not name == None and not name == "": | ||||
_attendee.params['CN'] = icalendar.vText(name) | _attendee.params['CN'] = icalendar.vText(name) | ||||
if not _rsvp == None: | if not _rsvp == None: | ||||
Show All 19 Lines | def get_ical_attendee(self): | ||||
return attendees | return attendees | ||||
def get_ical_attendee_participant_status(self, attendee): | def get_ical_attendee_participant_status(self, attendee): | ||||
attendee = self.get_attendee(attendee) | attendee = self.get_attendee(attendee) | ||||
if attendee.get_participant_status() in attendee.participant_status_map: | if attendee.get_participant_status() in attendee.participant_status_map: | ||||
return attendee.get_participant_status() | return attendee.get_participant_status() | ||||
elif attendee.get_participant_status() in attendee.participant_status_map.values(): | elif attendee.get_participant_status() in attendee.participant_status_map.values(): | ||||
return [k for k, v in attendee.participant_status_map.iteritems() if v == attendee.get_participant_status()][0] | return [k for k, v in attendee.participant_status_map.items() if v == attendee.get_participant_status()][0] | ||||
else: | else: | ||||
raise ValueError(_("Invalid participant status")) | raise ValueError(_("Invalid participant status")) | ||||
def get_ical_created(self): | def get_ical_created(self): | ||||
return self.get_created() | return self.get_created() | ||||
def get_ical_dtend(self): | def get_ical_dtend(self): | ||||
dtend = self.get_end() | dtend = self.get_end() | ||||
▲ Show 20 Lines • Show All 488 Lines • ▼ Show 20 Lines | def __str__(self): | ||||
if error == None or not error: | if error == None or not error: | ||||
return event_xml | return event_xml | ||||
else: | else: | ||||
raise EventIntegrityError(kolabformat.errorMessage()) | raise EventIntegrityError(kolabformat.errorMessage()) | ||||
def to_dict(self): | def to_dict(self): | ||||
data = dict() | data = dict() | ||||
for p, getter in self.properties_map.iteritems(): | for p, getter in self.properties_map.items(): | ||||
val = None | val = None | ||||
if hasattr(self, getter): | if hasattr(self, getter): | ||||
val = getattr(self, getter)() | val = getattr(self, getter)() | ||||
elif hasattr(self.event, getter): | elif hasattr(self.event, getter): | ||||
val = getattr(self.event, getter)() | val = getattr(self.event, getter)() | ||||
if isinstance(val, kolabformat.cDateTime): | if isinstance(val, kolabformat.cDateTime): | ||||
val = xmlutils.from_cdatetime(val, True) | val = xmlutils.from_cdatetime(val, True) | ||||
▲ Show 20 Lines • Show All 43 Lines • ▼ Show 20 Lines | def _alarm_to_dict(self, alarm): | ||||
ret['trigger']['value'] = re.sub(r"T$", '', re.sub(r"0[WDHMS]", '', value)) | ret['trigger']['value'] = re.sub(r"T$", '', re.sub(r"0[WDHMS]", '', value)) | ||||
if alarm.type() == kolabformat.Alarm.EMailAlarm: | if alarm.type() == kolabformat.Alarm.EMailAlarm: | ||||
ret['attendee'] = [ContactReference(a).to_dict() for a in alarm.attendees()] | ret['attendee'] = [ContactReference(a).to_dict() for a in alarm.attendees()] | ||||
return ret | return ret | ||||
def _translate_value(self, val, map): | def _translate_value(self, val, map): | ||||
name_map = dict([(v, k) for (k, v) in map.iteritems()]) | name_map = dict([(v, k) for (k, v) in map.items()]) | ||||
return name_map[val] if val in name_map else 'UNKNOWN' | return name_map[val] if val in name_map else 'UNKNOWN' | ||||
def to_message(self, creator=None): | def to_message(self, creator=None): | ||||
from email.MIMEMultipart import MIMEMultipart | from email.MIMEMultipart import MIMEMultipart | ||||
from email.MIMEBase import MIMEBase | from email.MIMEBase import MIMEBase | ||||
from email.MIMEText import MIMEText | from email.MIMEText import MIMEText | ||||
from email.Utils import COMMASPACE, formatdate | from email.Utils import COMMASPACE, formatdate | ||||
▲ Show 20 Lines • Show All 324 Lines • Show Last 20 Lines |