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') { if (!event_calendar_activated_for_group($container_guid)) { forward(); } elgg_push_breadcrumb(elgg_echo('event_calendar:group_breadcrumb')); elgg_push_context('groups'); elgg_set_page_owner_guid($container_guid); $user_guid = elgg_get_logged_in_user_guid(); if (event_calendar_can_add($container_guid)) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add/" . $container_guid, 'text' => elgg_echo('event_calendar:add'), 'class' => 'elgg-button elgg-button-action event-calendar-button-add')); } } else { elgg_push_breadcrumb(elgg_echo('item:object:event_calendar')); $user_guid = elgg_get_logged_in_user_guid(); if (event_calendar_can_add($container_guid)) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add", 'text' => elgg_echo('event_calendar:add'), 'class' => 'elgg-button elgg-button-action event-calendar-button-add')); } } $params = event_calendar_generate_listing_params($page_type, $container_guid, $start_date, $display_mode, $filter, $region); $url = current_page_url(); if (substr_count($url, '?')) { $url .= "&view=ical"; } else { $url .= "?view=ical"; } $url = elgg_format_url($url); $menu_options = array('name' => 'ical', 'id' => 'event-calendar-ical-link', 'text' => elgg_view_icon('calendar'), 'href' => $url, 'title' => elgg_echo('feed:ical'), 'priority' => 800, 'rel' => 'popup'); $menu_item = ElggMenuItem::factory($menu_options); elgg_register_menu_item('extras', $menu_item); $body = elgg_view_layout("content", $params); $body .= elgg_view_module('popup', elgg_echo('feed:ical'), elgg_echo('event_calendar:ical_popup_message') . elgg_view('output/url', array('href' => $url, 'text' => elgg_echo('export'), 'class' => 'elgg-button elgg-button-action')), array('id' => 'event-calendar-ical', 'class' => 'event-calendar-ical hidden')); return elgg_view_page($title, $body); }
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') { if (!event_calendar_activated_for_group($container_guid)) { forward(); } elgg_push_breadcrumb(elgg_echo('event_calendar:group_breadcrumb')); elgg_push_context('groups'); elgg_set_page_owner_guid($container_guid); $user_guid = elgg_get_logged_in_user_guid(); $group_calendar = elgg_get_plugin_setting('group_calendar', 'event_calendar'); if (!$group_calendar || $group_calendar == 'members') { if (elgg_get_page_owner_entity()->canWriteToContainer($user_guid)) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add/" . $container_guid, 'text' => elgg_echo('event_calendar:add'), 'class' => 'elgg-button elgg-button-action')); } } else { if ($group_calendar == 'admin') { if (elgg_is_admin_logged_in() || $group->owner_guid == $user_guid) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add/" . $container_guid, 'text' => elgg_echo('event_calendar:add'), 'class' => 'elgg-button elgg-button-action')); } } } } else { elgg_push_breadcrumb(elgg_echo('item:object:event_calendar')); $site_calendar = elgg_get_plugin_setting('site_calendar', 'event_calendar'); if (!$site_calendar || $site_calendar == 'admin') { // only admins can post directly to the site-wide calendar if (elgg_is_admin_logged_in()) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add", 'text' => elgg_echo('event_calendar:add'), 'class' => 'elgg-button elgg-button-action')); } } else { if ($site_calendar == 'loggedin') { // any logged-in user can post to the site calendar if (elgg_is_logged_in()) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add", 'text' => elgg_echo('event_calendar:add'), 'class' => 'elgg-button elgg-button-action')); } } } } $params = event_calendar_generate_listing_params($page_type, $container_guid, $start_date, $display_mode, $filter, $region); $url = full_url(); if (substr_count($url, '?')) { $url .= "&view=ical"; } else { $url .= "?view=ical"; } $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'), 'priority' => 800); $menu_item = ElggMenuItem::factory($menu_options); elgg_register_menu_item('extras', $menu_item); $body = elgg_view_layout("content", $params); return elgg_view_page($title, $body); }
function event_calendar_get_page_content_list($page_type, $container_guid, $start_date, $display_mode, $filter, $region = '-') { elgg_require_js('event_calendar/event_calendar'); global $autofeed; $autofeed = true; elgg_push_breadcrumb(elgg_echo('item:object:event_calendar'), 'event_calendar/list'); if ($page_type == 'group') { $group = get_entity($container_guid); if (!event_calendar_activated_for_group($group)) { forward(); } elgg_push_breadcrumb($group->name, 'event_calendar/group/' . $group->getGUID()); elgg_push_context('groups'); elgg_set_page_owner_guid($container_guid); if (event_calendar_can_add($container_guid)) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add/" . $container_guid, 'text' => elgg_echo('event_calendar:add'), 'link_class' => 'elgg-button elgg-button-action event-calendar-button-add')); } } else { if ($page_type == 'list') { if ($filter == 'mine') { $logged_in_user = elgg_get_logged_in_user_entity(); elgg_push_breadcrumb($logged_in_user->name, 'event_calendar/owner/' . $logged_in_user->username); } else { if ($filter == 'friends') { $logged_in_user = elgg_get_logged_in_user_entity(); elgg_push_breadcrumb($logged_in_user->name, 'event_calendar/owner/' . $logged_in_user->username); elgg_push_breadcrumb(elgg_echo('friends')); } else { if ($filter == 'open') { elgg_push_breadcrumb(elgg_echo('event_calendar:show_open')); } } } if (event_calendar_can_add()) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add", 'text' => elgg_echo('event_calendar:add'), 'link_class' => 'elgg-button elgg-button-action event-calendar-button-add')); } } else { $owner = get_entity($container_guid); elgg_set_page_owner_guid($container_guid); elgg_push_breadcrumb($owner->name, 'event_calendar/owner/' . $owner->username); if (event_calendar_can_add()) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "event_calendar/add", 'text' => elgg_echo('event_calendar:add'), 'link_class' => 'elgg-button elgg-button-action event-calendar-button-add')); } } } $params = event_calendar_generate_listing_params($page_type, $container_guid, $start_date, $display_mode, $filter, $region); $title = $params['title']; if (elgg_get_plugin_setting('ical_import_export', 'event_calendar') == "yes") { $url = current_page_url(); if (substr_count($url, '?')) { $url .= "&view=ical"; } else { $url .= "?view=ical"; } $url = elgg_format_url($url); $menu_options = array('name' => 'ical', 'id' => 'event-calendar-ical-link', 'text' => '<img src="' . elgg_get_simplecache_url('event_calendar/ics.png') . '" />', 'href' => $url, 'title' => elgg_echo('feed:ical'), 'priority' => 800); $menu_item = ElggMenuItem::factory($menu_options); elgg_register_menu_item('extras', $menu_item); } $body = elgg_view_layout("content", $params); return elgg_view_page($title, $body); }