'event_calendar:add' => "Add",
'feed:ical' => "iCal feed for this page",
+ 'event_calendar:ical_popup_message' => "You can use the following URL to get an iCalendar feed of the public events from this listing page: ",
'event_calendar:ical_auth_file_name:title' => "Location of iCal authentication file on local file system (experimental - not needed for public feeds)",
'event_calendar:owner:permissions_error' => "You do not have permission to view that page.",
function event_calendar_get_events_between($start_date,$end_date,$is_count,$limit=10,$offset=0,$container_guid=0,$region='-') {
if ($is_count) {
- $count = event_calendar_get_entities_from_metadata_between('start_date','end_date',
+ $count = event_calendar_get_entities_from_metadata_between2('start_date','end_date',
$start_date, $end_date, "object", "event_calendar", 0, $container_guid, $limit,$offset,"",0,false,true,$region);
return $count;
} else {
- $events = event_calendar_get_entities_from_metadata_between('start_date','end_date',
+ $events = event_calendar_get_entities_from_metadata_between2('start_date','end_date',
$start_date, $end_date, "object", "event_calendar", 0, $container_guid, $limit,$offset,"",0,false,false,$region);
//return event_calendar_vsort($events,'start_date');
return $events;
// pages
function event_calendar_get_page_content_list($page_type,$container_guid,$start_date,$display_mode,$filter,$region='-') {
+ elgg_load_js('elgg.event_calendar');
global $autofeed;
$autofeed = true;
if ($page_type == 'group') {
$url = elgg_format_url($url);
$menu_options = array(
'name' => 'ical',
+ 'id' => 'event-calendar-ical-link',
'text' => '<img src="'.elgg_get_site_url().'mod/event_calendar/images/ics.png" />',
'href' => $url,
'title' => elgg_echo('feed:ical'),
function event_calendar_entity_menu_prepare($hook, $type, $return, $params) {
// remove access level from listings
- if (!elgg_in_context('event_calendar:view')) {
+ if (elgg_in_context('event_calendar') && !elgg_in_context('event_calendar:view')) {
$new_return = array();
- foreach($return['default'] AS $item) {
- if ($item->getName() != 'access') {
- $new_return[] = $item;
+ if ($return['default']) {
+ foreach($return['default'] AS $item) {
+ if ($item->getName() != 'access') {
+ $new_return[] = $item;
+ }
}
}
$return['default'] = $new_return;
$('.event_calendar_paged_checkbox').click(elgg.event_calendar.handlePagedPersonalCalendarToggle);
$('.event-calendar-personal-calendar-toggle').click(elgg.event_calendar.handleDisplayPagePersonalCalendarToggle);
$('#event-calendar-region').change(elgg.event_calendar.handleRegionChange);
+ $('#event-calendar-ical-link').click(elgg.event_calendar.handleIcalPopup);
}
elgg.event_calendar.handleRegionChange = function(e) {
elgg.forward(url);
}
+elgg.event_calendar.handleIcalPopup = function(e) {
+ var message = elgg.echo('event_calendar:ical_popup_message')+"\n"+this.href;
+ alert(message);
+ return false;
+}
+
elgg.event_calendar.handlePagedPersonalCalendarToggle = function() {
guid = parseInt($(this).attr('id').substring('event_calendar_paged_checkbox_'.length));
elgg.event_calendar.togglePagedPersonalCalendar(guid);
LAST-MODIFIED:<?php echo date("Ymd\THis\Z", $event->getTimeUpdated()) ?>
-DTSTART:<?php echo date("Ymd\THis\Z", $event->start_date); ?>
+DTSTART;VALUE=DATE:<?php echo date("Ymd\THis\Z", $event->start_date); ?>
-DTEND:<?php echo date("Ymd\THis\Z", $event->real_end_time); ?>
+DTEND;VALUE=DATE:<?php echo date("Ymd\THis\Z", $event->real_end_time); ?>
SUMMARY:<?php echo $event->title; ?>
*/
header("Content-Type: text/calendar");
-//header("Content-Disposition: attachment; filename=\"calendar.ics\"");
+header("Content-Disposition: inline; filename=\"calendar.ics\"");
?>
BEGIN:VCALENDAR
VERSION:2.0