Пример #1
0
 /**
  * @param $row - array with :
  * // minimum for invitation http://www.ietf.org/rfc/rfc5546.txt [Page 20]
  *  SUMMARY
  *  DTSTAMP
  *  DTSTART
  *  DTEND
  *  UID
  *
  * // extra params:
  *
  *
  * @param $organizer - array of organizer contain email as attendee and fullname as property column
  * @param $attendees - array of arrays with attendees (attendee, property)
  * @return string
  */
 private function renderRowToInvitation($row, $organizer, $attendees)
 {
     $status = 'TENTATIVE';
     $calendar = new vCalendar();
     $calendar->AddProperty("METHOD", "REQUEST");
     $event = new vComponent();
     $event->SetType("VEVENT");
     $event->AddProperty("SUMMARY", $row->summary);
     $event->AddProperty("DTSTAMP", $row->dtstamp);
     $event->AddProperty("DTSTART", $row->dtstart);
     $event->AddProperty("DTEND", $row->dtend);
     $event->AddProperty("UID", $row->uid);
     $event->AddProperty("EMAIL", $organizer->attendee);
     // url
     //$event->AddProperty("URL", "http://127.0.0.1/public.php?XDEBUG_SESSION_START=14830");
     $organizerproperty = null;
     if (isset($organizer->params) && $organizer->params != null) {
         $organizerproperty = array('CN' => $organizer->params);
     }
     $event->AddProperty("ORGANIZER", 'mailto:' . $organizer->attendee, $organizerproperty);
     $event->AddProperty("STATUS", $status);
     foreach ($attendees as $attendee) {
         $partstat = $attendee->partstat;
         $attendeePropertyArray = $this->extractParametersToArrayFromProperty($attendee->params);
         // add partstat from DB
         $attendeePropertyArray['PARTSTAT'] = $partstat;
         $event->AddProperty("ATTENDEE", $attendee->attendee, $attendeePropertyArray);
     }
     $calendar->AddComponent($event);
     $result = $calendar->render();
     return $result;
 }