Properly return "free" on confirmed events that are free
authorTerry Wilson <twilson@digium.com>
Fri, 9 Oct 2009 22:04:04 +0000 (22:04 +0000)
committerTerry Wilson <twilson@digium.com>
Fri, 9 Oct 2009 22:04:04 +0000 (22:04 +0000)
CONFIRMED status doesn't imply busy or free, that is handled with the TRANSP
field. Luckily, libical already sets the is_busy status on the span for us.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@223370 65c4cc65-6c06-0410-ace0-fbb531ad65f3

res/res_calendar_caldav.c
res/res_calendar_icalendar.c

index 2b3f5a3..f575dbf 100644 (file)
@@ -322,18 +322,7 @@ static void caldav_add_event(icalcomponent *comp, struct icaltime_span *span, vo
        event->start = span->start;
        event->end = span->end;
 
-       switch(icalcomponent_get_status(comp)) {
-       case ICAL_STATUS_CONFIRMED:
-               event->busy_state = AST_CALENDAR_BS_BUSY;
-               break;
-
-       case ICAL_STATUS_TENTATIVE:
-               event->busy_state = AST_CALENDAR_BS_BUSY_TENTATIVE;
-               break;
-
-       default:
-               event->busy_state = AST_CALENDAR_BS_FREE;
-       }
+       event->busy_state = span->is_busy ? AST_CALENDAR_BS_BUSY : AST_CALENDAR_BS_FREE;
 
        if ((prop = icalcomponent_get_first_property(comp, ICAL_SUMMARY_PROPERTY))) {
                ast_string_field_set(event, summary, icalproperty_get_value_as_string(prop));
index 97c3253..f235fa5 100644 (file)
@@ -185,18 +185,7 @@ static void icalendar_add_event(icalcomponent *comp, struct icaltime_span *span,
        event->start = span->start;
        event->end = span->end;
 
-       switch(icalcomponent_get_status(comp)) {
-       case ICAL_STATUS_CONFIRMED:
-               event->busy_state = AST_CALENDAR_BS_BUSY;
-               break;
-
-       case ICAL_STATUS_TENTATIVE:
-               event->busy_state = AST_CALENDAR_BS_BUSY_TENTATIVE;
-               break;
-
-       default:
-               event->busy_state = AST_CALENDAR_BS_FREE;
-       }
+       event->busy_state = span->is_busy ? AST_CALENDAR_BS_BUSY : AST_CALENDAR_BS_FREE;
 
        if ((prop = icalcomponent_get_first_property(comp, ICAL_SUMMARY_PROPERTY))) {
                ast_string_field_set(event, summary, icalproperty_get_value_as_string(prop));