/**
  * get attendee array for given contact
  * 
  * @param  \Sabre\VObject\Property\ICalendar\CalAddress  $calAddress  the attendee row from the vevent object
  * @return array
  */
 protected function _getAttendee(\Sabre\VObject\Property\ICalendar\CalAddress $calAddress)
 {
     $newAttendee = parent::_getAttendee($calAddress);
     // skip implicit organizer attendee.
     // NOTE: when the organizer edits the event he becomes attendee anyway, see comments in MSEventFacade::update
     // in mavericks iCal adds organiser as attendee without role
     if (version_compare($this->_version, '10.9', '>=') && version_compare($this->_version, '10.10', '<')) {
         if (!isset($calAddress['ROLE'])) {
             return NULL;
         }
         // in yosemite iCal adds organiser with role "chair" but has no roles for other attendee
     } else {
         if (version_compare($this->_version, '10.10', '>=')) {
             if (isset($calAddress['ROLE']) && $calAddress['ROLE'] == 'CHAIR') {
                 return NULL;
             }
         }
     }
     return $newAttendee;
 }
 /**
  * get attendee array for given contact
  * 
  * @param  \Sabre\VObject\Property\ICalendar\CalAddress  $calAddress  the attendee row from the vevent object
  * @return array
  */
 protected function _getAttendee(\Sabre\VObject\Property\ICalendar\CalAddress $calAddress)
 {
     $newAttendee = parent::_getAttendee($calAddress);
     // skip implicit organizer attendee.
     // NOTE: when the organizer edits the event he becomes attendee anyway, see comments in MSEventFacade::update
     // in mavericks iCal adds organiser as attendee without role
     if (version_compare($this->_version, '10.9', '>=') && version_compare($this->_version, '10.10', '<')) {
         if (!isset($calAddress['ROLE'])) {
             return NULL;
         }
         // in yosemite iCal adds organiser with role "chair" but has no roles for other attendee
     } else {
         if (version_compare($this->_version, '10.10', '>=')) {
             if (isset($calAddress['ROLE']) && $calAddress['ROLE'] == 'CHAIR') {
                 return NULL;
             }
         }
     }
     // rewrite INTELLIGROUP TO GROUP
     if (self::INTELLIGROUP === $newAttendee['userType']) {
         $newAttendee['userType'] = static::$cutypeMap[Calendar_Model_Attender::USERTYPE_GROUP];
     }
     return $newAttendee;
 }