aboutsummaryrefslogtreecommitdiff
path: root/views
diff options
context:
space:
mode:
authorKevin Jardine <kevinjardine@yahoo.com>2011-09-28 17:02:51 +0200
committerKevin Jardine <kevinjardine@yahoo.com>2011-09-28 17:02:51 +0200
commit8b595e63700e1ebaf0f31b08b0009922acc780e3 (patch)
tree986f80c2acca023c8734e4758f03e96c1a43cd44 /views
parent1bba961e3cea230e7d6a62a5016c5ea23a5c0e76 (diff)
downloadelgg-8b595e63700e1ebaf0f31b08b0009922acc780e3.tar.gz
elgg-8b595e63700e1ebaf0f31b08b0009922acc780e3.tar.bz2
restored RSS feed and added iCal feed
Diffstat (limited to 'views')
-rw-r--r--views/ical/event_calendar/show_events.php7
-rw-r--r--views/ical/object/event_calendar.php44
-rw-r--r--views/ical/page/default.php17
-rw-r--r--views/ical/page/layouts/default.php2
-rw-r--r--views/rss/event_calendar/show_events.php1
5 files changed, 70 insertions, 1 deletions
diff --git a/views/ical/event_calendar/show_events.php b/views/ical/event_calendar/show_events.php
new file mode 100644
index 000000000..19981596f
--- /dev/null
+++ b/views/ical/event_calendar/show_events.php
@@ -0,0 +1,7 @@
+<?php
+if ($vars['events']) {
+ foreach ($vars['events'] as $entity) {
+ echo elgg_view_entity($entity);
+ }
+ //echo elgg_view_entity_list($vars['events'], $vars['count'], $vars['offset'], $vars['limit'], false, false);
+}
diff --git a/views/ical/object/event_calendar.php b/views/ical/object/event_calendar.php
new file mode 100644
index 000000000..a6ed889e5
--- /dev/null
+++ b/views/ical/object/event_calendar.php
@@ -0,0 +1,44 @@
+<?php
+$event = $vars['entity'];
+if ($event->organizer) {
+ $organizer = "\nORGANIZER;CN={$event->organizer}\n";
+} else {
+ $organizer = '';
+}
+
+if ($event->description) {
+ // make sure that we are using Unix line endings
+ $description = str_replace("\r\n","\n",$event->description);
+ $description = str_replace("\r","\n",$description);
+
+ // now convert to icalendar format
+ $description = str_replace("\n",'\n',$description);
+ $description = wordwrap($description,75,"\r\n ",TRUE);
+} else {
+ $description = '';
+}
+?>
+BEGIN:VEVENT
+UID:<?php echo elgg_get_site_url().'event_calendar/view/'.$event->guid; ?>
+
+URL:<?php echo elgg_get_site_url().'event_calendar/view/'.$event->guid; ?>
+
+DTSTAMP:<?php echo date("Ymd\THis\Z", $event->getTimeUpdated())?>
+
+CREATED:<?php echo date("Ymd\THis\Z", $event->getTimeCreated())?>
+
+LAST-MODIFIED:<?php echo date("Ymd\THis\Z", $event->getTimeUpdated()) ?>
+
+DTSTART:<?php echo date("Ymd\THis\Z", $event->start_date); ?>
+
+DTEND:<?php echo date("Ymd\THis\Z", $event->real_end_time); ?>
+
+SUMMARY:<?php echo $event->title; ?>
+
+DESCRIPTION:<?php echo $description; ?>
+
+LOCATION:<?php echo $event->venue; ?><?php echo $organizer; ?>
+
+CATEGORIES:<?php implode(",",$event->tags); ?>
+
+END:VEVENT
diff --git a/views/ical/page/default.php b/views/ical/page/default.php
new file mode 100644
index 000000000..b8347c9a0
--- /dev/null
+++ b/views/ical/page/default.php
@@ -0,0 +1,17 @@
+<?php
+/**
+ * Elgg ICAL output pageshell
+ *
+ * @package Elgg
+ * @subpackage Core
+ *
+ */
+
+header("Content-Type: text/calendar");
+header("Content-Disposition: attachment; filename=\"calendar.ics\"");
+?>
+BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//Curverider Ltd//NONSGML Elgg <?php echo get_version(true); ?>//EN
+<?php echo $vars['body']; ?>
+END:VCALENDAR
diff --git a/views/ical/page/layouts/default.php b/views/ical/page/layouts/default.php
new file mode 100644
index 000000000..57598fa1b
--- /dev/null
+++ b/views/ical/page/layouts/default.php
@@ -0,0 +1,2 @@
+<?php
+echo $vars['content']; \ No newline at end of file
diff --git a/views/rss/event_calendar/show_events.php b/views/rss/event_calendar/show_events.php
index 0b2fe5b70..add5b75db 100644
--- a/views/rss/event_calendar/show_events.php
+++ b/views/rss/event_calendar/show_events.php
@@ -9,7 +9,6 @@
* @link http://radagast.biz/
*
*/
-
if ($vars['events']) {
echo elgg_view_entity_list($vars['events'], $vars['count'], $vars['offset'], $vars['limit'], false, false);
}