curnode); // create the event within the ical object $eventobj = new ZCiCalNode("VEVENT", $icalobj->curnode); // add title $eventobj->addNode(new ZCiCalDataNode("SUMMARY:" . $summary)); // add start date $eventobj->addNode(new ZCiCalDataNode("DTSTART:" . ZCiCal::fromSqlDateTime($startTime))); // add end date if ($endTime) $eventobj->addNode(new ZCiCalDataNode("DTEND:" . ZCiCal::fromSqlDateTime($endTime))); // UID is a required item in VEVENT, create unique string for this event // Adding your domain to the end is a good way of creating uniqueness $uid = date('Y-m-d-H-i-s') . "@buildersit.com"; $eventobj->addNode(new ZCiCalDataNode("UID:" . $uid)); // DTSTAMP is a required item in VEVENT $eventobj->addNode(new ZCiCalDataNode("DTSTAMP:" . ZCiCal::fromSqlDateTime())); // add description if ($description) $eventobj->addNode(new ZCiCalDataNode("DESCRIPTION:" . ZCiCal::formatContent($description))); // add location if ($location) $eventobj->addNode(new ZCiCalDataNode("LOCATION:" . $location)); // write iCalendar feed to stdout return $icalobj->export(); } /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ?>