/** * video init */ function videos_init() { $root = dirname(__FILE__); elgg_register_library('elgg:videos', elgg_get_plugins_path() . 'videos/lib/videos.php'); // For now we can use the embed video library of Cash. Once that plugin is updated to 1.8 // we can use the elgg's manifest file to make the users use that library along with this // and remove the library from this plugin // V1.4 Added support for https in Cash's library elgg_register_library('elgg:videos:embed', elgg_get_plugins_path() . 'videos/lib/embed_video.php'); elgg_register_library('elgg:youtube_api', elgg_get_plugins_path() . 'videos/lib/youtube_functions.php'); $action_path = "{$root}/actions/videos"; elgg_register_action('videos/save', "{$action_path}/save.php"); elgg_register_action('videos/delete', "{$action_path}/delete.php"); elgg_register_menu_item('site', array('name' => 'videos', 'text' => elgg_echo('videos'), 'href' => 'videos/all')); elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'videos_owner_block_menu'); elgg_register_page_handler('videos', 'videos_page_handler'); elgg_extend_view('css/elgg', 'videos/css'); elgg_register_widget_type('videos', elgg_echo('videos'), elgg_echo('videos:widget:description')); register_notification_object('object', 'videos', elgg_echo('videos:new')); elgg_register_plugin_hook_handler('notify:entity:message', 'object', 'videos_notify_message'); elgg_register_entity_url_handler('object', 'videos', 'video_url'); elgg_register_entity_type('object', 'videos'); add_group_tool_option('videos', elgg_echo('videos:enablevideos'), true); elgg_extend_view('groups/tool_latest', 'videos/group_module'); $views = array('output/longtext', 'output/plaintext'); foreach ($views as $view) { elgg_register_plugin_hook_handler("view", $view, "videos_view_filter", 500); } }
function event_manager_init() { // Register subtype run_function_once("event_manager_run_once_subtypes"); // Register entity_type for search elgg_register_entity_type("object", Event::SUBTYPE); elgg_extend_view("css/elgg", "event_manager/css/site"); elgg_extend_view("js/elgg", "js/event_manager/site"); elgg_extend_view("page/elements/head", "event_manager/metatags"); elgg_register_page_handler("events", "event_manager_page_handler"); // Register granular notification for this type register_notification_object("object", Event::SUBTYPE, elgg_echo("event_manager:notification:subject")); // Listen to notification events and supply a more useful message elgg_register_plugin_hook_handler("notify:entity:message", "object", "event_manager_notify_message"); // add site menu item elgg_register_menu_item("site", array("name" => "event_manager", "text" => elgg_echo("event_manager:menu:title"), "href" => "/events")); // add group tool option add_group_tool_option("event_manager", elgg_echo("groups:enableevents"), true); // add to group profile elgg_extend_view("groups/tool_latest", "event_manager/group_module"); // add widgets elgg_register_widget_type("events", elgg_echo("event_manager:widgets:events:title"), elgg_echo("event_manager:widgets:events:description"), "index,dashboard,profile,groups"); elgg_register_plugin_hook_handler("widget_url", "widget_manager", "event_manager_widget_events_url"); // register js libraries $maps_key = elgg_get_plugin_setting("google_api_key", "event_manager"); elgg_register_simplecache_view("js/event_manager/googlemaps"); $em_maps_js = elgg_get_simplecache_url("js", "event_manager/googlemaps"); elgg_register_js("event_manager.maps.helper", $em_maps_js); elgg_register_js("event_manager.maps.base", "//maps.googleapis.com/maps/api/js?key=" . $maps_key . "&sensor=true"); elgg_register_js("addthisevent", elgg_get_site_url() . "mod/event_manager/vendors/addthisevent/atemay.js"); }
/** * initialization of plugin * * @return unknown_type */ function profile_manager_init() { // Extend CSS elgg_extend_view("css/admin", "profile_manager/css/global"); elgg_extend_view("css/admin", "profile_manager/css/admin"); elgg_extend_view("css/elgg", "profile_manager/css/global"); elgg_extend_view("css/elgg", "profile_manager/css/site"); elgg_extend_view("js/elgg", "profile_manager/js/site"); elgg_extend_view("js/admin", "profile_manager/js/admin"); // Register Page handler elgg_register_page_handler("profile_manager", "profile_manager_page_handler"); // admin user add, registered here to overrule default action elgg_register_action("useradd", dirname(__FILE__) . "/actions/useradd.php", "admin"); // Register all custom field types register_custom_field_types(); // add profile_completeness widget if (elgg_get_plugin_setting("enable_profile_completeness_widget", "profile_manager") == "yes") { elgg_register_widget_type("profile_completeness", elgg_echo("widgets:profile_completeness:title"), elgg_echo("widgets:profile_completeness:description"), "profile,dashboard"); } // free_text on register form elgg_extend_view("register/extend_side", "profile_manager/register/free_text"); // where to put extra profile fields if (elgg_get_plugin_setting("registration_extra_fields", "profile_manager") == "beside") { // besides the default registration page elgg_extend_view("register/extend_side", "profile_manager/register/fields"); } else { // just below the default registration page elgg_extend_view("register/extend", "profile_manager/register/fields"); } // Run once function to configure this plugin run_function_once('profile_manager_run_once', 1287964800); // 2010-10-25 run_function_once('pm_fix_access_default'); }
/** * This function gets called during the system initialization * * @return void */ function blog_tools_init() { // extend css elgg_extend_view("css/elgg", "css/blog_tools/site"); elgg_extend_view("js/elgg", "js/blog_tools/site"); // extra blog views elgg_extend_view("object/blog", "blog_tools/full/navigation"); elgg_extend_view("object/blog", "blog_tools/full/owner"); elgg_extend_view("object/blog", "blog_tools/full/related"); elgg_extend_view("blog/sidebar", "blog_tools/full/related"); // register event handlers elgg_register_event_handler("delete", "object", array("\\ColdTrick\\BlogTools\\DeleteHandler", "cleanupBlogIcon")); // register plugin hook handlers elgg_register_plugin_hook_handler("entity:url", "object", array("\\ColdTrick\\BlogTools\\Widgets", "widgetUrl")); elgg_register_plugin_hook_handler("cron", "daily", array("\\ColdTrick\\BlogTools\\Cron", "daily")); elgg_register_plugin_hook_handler("entity:icon:url", "object", array("\\ColdTrick\\BlogTools\\EntityIcon", "blogIcon")); elgg_register_plugin_hook_handler("route", "blog", array("\\ColdTrick\\BlogTools\\Router", "blog")); elgg_register_plugin_hook_handler("register", "menu:entity", array("\\ColdTrick\\BlogTools\\EntityMenu", "register")); elgg_register_plugin_hook_handler("group_tool_widgets", "widget_manager", array("\\ColdTrick\\BlogTools\\Widgets", "groupTools")); elgg_register_plugin_hook_handler("permissions_check:comment", "object", array("\\ColdTrick\\BlogTools\\Access", "blogCanComment")); // extend editmenu elgg_extend_view("editmenu", "blog_tools/editmenu"); // add featured filter menu item elgg_register_menu_item("filter", ElggMenuItem::factory(array("name" => "featured", "text" => elgg_echo("blog_tools:menu:filter:featured"), "context" => "blog", "href" => "blog/featured", "priority" => 600))); // register index widget elgg_register_widget_type("index_blog", elgg_echo("blog"), elgg_echo("blog_tools:widgets:index_blog:description"), array("index"), true); elgg_register_widget_type("blog", elgg_echo("blog"), elgg_echo("blog:widget:description"), array("profile", "dashboard", "groups")); // overrule blog actions elgg_register_action("blog/save", dirname(__FILE__) . "/actions/blog/save.php"); elgg_register_action("blog/auto_save_revision", dirname(__FILE__) . "/actions/blog/auto_save_revision.php"); // register actions elgg_register_action("blog_tools/toggle_metadata", dirname(__FILE__) . "/actions/toggle_metadata.php", "admin"); }
/** * Called on the 'init' 'system' event * * @return void */ function simplesaml_init() { // load libraries elgg_load_library('simplesamlphp'); require_once dirname(__FILE__) . '/lib/functions.php'; // check for force authentication elgg_extend_view('page/default', 'simplesaml/force_authentication', 200); elgg_extend_view('page/walled_garden', 'simplesaml/force_authentication', 200); // allow login elgg_extend_view('forms/login', 'simplesaml/login'); // register page_handler for nice URL's elgg_register_page_handler('saml', '\\ColdTrick\\SimpleSAML\\PageHandler::saml'); // register widgets elgg_register_widget_type('simplesaml', elgg_echo('login'), elgg_echo('simplesaml:widget:description'), ['index'], true); // register events elgg_register_event_handler('login:after', 'user', '\\ColdTrick\\SimpleSAML\\Login::loginEvent'); // register plugin hooks elgg_register_plugin_hook_handler('public_pages', 'walled_garden', '\\ColdTrick\\SimpleSAML\\WalledGarden::publicPages'); elgg_register_plugin_hook_handler('entity:url', 'object', '\\ColdTrick\\SimpleSAML\\WidgetManager::widgetURL'); elgg_register_plugin_hook_handler('setting', 'plugin', '\\ColdTrick\\SimpleSAML\\PluginSettings::saveSetting'); elgg_register_plugin_hook_handler('action', 'logout', '\\ColdTrick\\SimpleSAML\\Logout::action'); // register actions elgg_register_action('simplesaml/register', dirname(__FILE__) . '/actions/register.php', 'public'); elgg_register_action('simplesaml/unlink', dirname(__FILE__) . '/actions/unlink.php'); }
/** * Vouchers plugin initialization functions. */ function vouchers_init() { // register a library of helper functions elgg_register_library('elgg:vouchers', elgg_get_plugins_path() . 'vouchers/lib/vouchers.php'); // Register subtype run_function_once('vouchers_manager_run_once_subtypes'); // Register entity_type for search elgg_register_entity_type('object', Voucher::SUBTYPE); // Site navigation $item = new ElggMenuItem('vouchers', elgg_echo('vouchers:menu'), 'vouchers/all'); elgg_register_menu_item('site', $item); // Extend CSS elgg_extend_view('css/elgg', 'vouchers/css'); elgg_register_css('vouchers_tooltip_css', '//code.jquery.com/ui/1.11.1/themes/smoothness/jquery-ui.css'); // Extend js elgg_register_js('vouchersjs', elgg_get_site_url() . 'mod/vouchers/assets/vouchers.js'); elgg_register_js('vouchers_tooltip_js', '//code.jquery.com/ui/1.11.1/jquery-ui.js'); // Register a page handler, so we can have nice URLs elgg_register_page_handler('vouchers', 'vouchers_page_handler'); // Register a URL handler for voucher $release = get_version(true); // Register a URL handler for agora if ($release < 1.9) { // version 1.8 elgg_register_entity_url_handler('object', 'vouchers', 'voucher_url'); } else { // use this since Elgg 1.9 elgg_register_plugin_hook_handler('entity:url', 'object', 'vouchers_set_url'); } // Register menu item to an ownerblock elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'vouchers_owner_block_menu'); // Register admin transaction log menu under "Utilities" elgg_register_admin_menu_item('administer', 'vouchers_transactions_log', 'administer_utilities'); // register plugin hooks elgg_register_plugin_hook_handler("public_pages", "walled_garden", "vouchers_walled_garden_hook"); // Register actions $action_path = elgg_get_plugins_path() . 'vouchers/actions'; elgg_register_action("vouchers/addvoucher", "{$action_path}/addvoucher.php"); elgg_register_action("vouchers/delete", "{$action_path}/delvoucher.php"); elgg_register_action("vouchers/set_featured", "{$action_path}/vouchers/set_featured.php"); // set a voucher post as featured elgg_register_action("vouchers/unset_featured", "{$action_path}/vouchers/unset_featured.php"); // unset a voucher post from featured elgg_register_action("vouchers/get_with_points", "{$action_path}/vouchers/get_with_points.php"); // voucher purchase with points only elgg_register_action('vouchers/be_interested', "{$action_path}/be_interested.php"); // send interest elgg_register_action("vouchers/usersettings", "{$action_path}/usersettings.php"); // save user settings // extend group main page elgg_extend_view('groups/tool_latest', 'vouchers/group_module'); //elgg_extend_view("print", "printpreview/pageshell/pageshell"); // add the group vouchers tool option add_group_tool_option('vouchers', elgg_echo('vouchers:group:enablevouchers'), true); // Add vouchers widgets elgg_register_widget_type('vouchers', elgg_echo('vouchers:widget'), elgg_echo('vouchers:widget:description'), 'profile,groups,dashboard'); // member's voucher posts elgg_register_widget_type('vouchers_featured', elgg_echo('vouchers:widget:featured'), elgg_echo('vouchers:widget:featured:description'), 'dashboard'); // featured vouchers for dashboard }
/** * Initialize the pages plugin. * */ function publications_init() { // register a library of helper functions elgg_register_library('elgg:publications', elgg_get_plugins_path() . 'publications/lib/publications.php'); $item = new ElggMenuItem('pages', elgg_echo('publications'), 'publications/all'); elgg_register_menu_item('site', $item); // Register a page handler, so we can have nice URLs elgg_register_page_handler('publications', 'publications_page_handler'); // Register an icon handler for blog elgg_register_page_handler("publicationsicon", "publications_icon_handler"); // Register a url handler elgg_register_entity_url_handler('object', 'publication', 'publication_url_handler'); // Register some actions $action_base = elgg_get_plugins_path() . 'publications/actions'; elgg_register_action("publications/edit", "{$action_base}/publications/edit.php"); elgg_register_action("publications/delete", "{$action_base}/publications/delete.php"); // Register entity type for search elgg_register_entity_type('object', 'publication'); //icon url overide elgg_register_plugin_hook_handler("entity:icon:url", "object", "publications_icon_hook"); //add a widget elgg_register_widget_type('publications', elgg_echo('publications'), elgg_echo('publications:widget:description'), "index"); // Language short codes must be of the form "pages:key" // where key is the array key below elgg_set_config('publications', array('title' => 'text', 'description' => 'longtext', 'pubDate' => 'text', 'tags' => 'tags', 'access_id' => 'access')); }
/** * Inits the various widgets * @return void */ function amapnews_widgets_init() { // Add amapnews widget for displaying latest posts elgg_register_widget_type('amapnews', elgg_echo('amapnews:widget'), elgg_echo('amapnews:widget:description'), array("profile", "dashboard", "index", "groups"), false); // Add amapnews widget for displaying latest posts elgg_register_widget_type('amapnews_featured', elgg_echo('amapnews:widget:amapnews_featured'), elgg_echo('amapnews:widget:amapnews_featured:description'), array("dashboard", "index", "groups"), false); }
function widget_group_files_init() { if (elgg_is_active_plugin("file")) { elgg_register_widget_type("group_files", elgg_echo("file:group"), elgg_echo("widgets:group_files:description"), "groups"); elgg_register_plugin_hook_handler('widget_url', 'widget_manager', "widget_group_files_url"); } }
function questions_init() { elgg_register_library("elgg:questions", dirname(__FILE__) . "/lib/questions.php"); add_subtype("object", 'question', 'ElggQuestion'); update_subtype("object", 'question', 'ElggQuestion'); add_subtype("object", 'answer', 'ElggAnswer'); update_subtype("object", 'answer', 'ElggAnswer'); elgg_extend_view("css/elgg", "questions/css"); elgg_extend_view("js/elgg", "questions/js"); elgg_register_menu_item("site", array("name" => 'questions', "text" => elgg_echo('questions'), "href" => "/questions/all")); elgg_register_entity_type("object", 'questions'); elgg_register_widget_type('questions', elgg_echo("widget:questions:title"), elgg_echo("widget:questions:description")); $actions_base = dirname(__FILE__) . '/actions/object/question'; elgg_register_action("object/question/save", "{$actions_base}/save.php"); elgg_register_action("questions/delete", "{$actions_base}/delete.php"); $actions_base = dirname(__FILE__) . '/actions/object/answer'; elgg_register_action("object/answer/save", "{$actions_base}/save.php"); elgg_register_entity_url_handler('object', 'question', 'questions_url_handler'); $plugin_dir = dirname(__FILE__); elgg_register_entity_url_handler('object', 'answer', 'answers_url'); elgg_register_page_handler('questions', 'questions_page_handler'); elgg_register_page_handler('answers', 'answers_page_handler'); $actions_base = "{$plugin_dir}/actions/object/answer"; elgg_register_action('object/answer/add', "{$actions_base}/save.php"); elgg_register_action('object/answer/edit', "{$actions_base}/save.php"); elgg_register_action('answers/delete', "{$actions_base}/delete.php"); elgg_register_plugin_hook_handler("register", "menu:owner_block", 'questions_owner_block_menu_handler'); elgg_register_plugin_hook_handler("register", "menu:user_hover", 'questions_user_hover_menu_handler'); elgg_register_plugin_hook_handler("register", 'menu:entity', 'questions_entity_menu_handler'); elgg_register_plugin_hook_handler("notify:entity:message", "object", 'questions_notify_message_handler'); add_group_tool_option('questions', elgg_echo("questions:enable"), true); elgg_extend_view("groups/tool_latest", "questions/group_module"); elgg_register_plugin_hook_handler('container_permissions_check', 'object', 'questions_container_permissions_check'); }
function celebrations_init() { elgg_register_library('celebrations_lib', elgg_get_plugins_path() . 'celebrations/lib/celebrations_lib.php'); elgg_load_library('celebrations_lib'); if (elgg_get_plugin_setting("ViewReminder", "celebrations") == 'yes') { elgg_register_event_handler('login:after', 'user', 'show_next_celebrations'); } elgg_register_plugin_hook_handler('profile:fields', 'profile', 'celebrations_profile_fields_plugin_handler'); if (elgg_is_logged_in()) { elgg_register_menu_item('site', array('name' => 'celebrations', 'text' => elgg_echo('celebrations:shorttitle'), 'href' => "celebrations/celebrations")); } // Extend system CSS elgg_extend_view('css/elgg', 'celebrations/css'); // Register a page handler, so we can have nice URLs elgg_register_page_handler('celebrations', 'celebrations_page_handler'); //add widgets elgg_register_widget_type('today_celebrations', elgg_echo("today_celebrations:title"), elgg_echo("today_celebrations:description")); elgg_register_widget_type('next_celebrations', elgg_echo("next_celebrations:title"), elgg_echo("next_celebrations:description")); //add index widgets for Widget Manager plugin elgg_register_widget_type('index_today_celebrations', elgg_echo('today_celebrations:title'), elgg_echo('today_celebrations:description'), array("index")); elgg_register_widget_type('index_next_celebrations', elgg_echo('next_celebrations:title'), elgg_echo('next_celebrations:description'), array("index")); elgg_register_plugin_hook_handler("entity:url", "object", "celebrations_widget_urls"); elgg_register_action('celebrations/settings/save', elgg_get_plugins_path() . "celebrations/actions/celebrations/settings.php", 'admin'); if (elgg_is_active_plugin('profile_manager')) { $profile_options = array("show_on_register" => "no", "mandatory" => "no", "user_editable" => "yes", "output_as_tags" => "no", "admin_only" => "no", "count_for_completeness" => "yes"); profile_manager_add_custom_field_type("custom_profile_field_types", "day_anniversary", "day_anniversary", $profile_options); profile_manager_add_custom_field_type("custom_profile_field_types", "yearly", "day_anniversary", $profile_options); } }
/** * Bookmark init */ function bookmarks_init() { $root = dirname(__FILE__); elgg_register_library('elgg:bookmarks', "{$root}/lib/bookmarks.php"); // actions $action_path = "{$root}/actions/bookmarks"; elgg_register_action('bookmarks/save', "{$action_path}/save.php"); elgg_register_action('bookmarks/delete', "{$action_path}/delete.php"); elgg_register_action('bookmarks/share', "{$action_path}/share.php"); // menus elgg_register_menu_item('site', array('name' => 'bookmarks', 'text' => elgg_echo('bookmarks'), 'href' => 'bookmarks/all')); elgg_register_plugin_hook_handler('register', 'menu:page', 'bookmarks_page_menu'); elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'bookmarks_owner_block_menu'); elgg_register_page_handler('bookmarks', 'bookmarks_page_handler'); elgg_extend_view('css/elgg', 'bookmarks/css'); elgg_extend_view('js/elgg', 'bookmarks/js'); elgg_register_widget_type('bookmarks', elgg_echo('bookmarks'), elgg_echo('bookmarks:widget:description')); if (elgg_is_logged_in()) { $user_guid = elgg_get_logged_in_user_guid(); $address = urlencode(current_page_url()); elgg_register_menu_item('extras', array('name' => 'bookmark', 'text' => elgg_view_icon('push-pin-alt'), 'href' => "bookmarks/add/{$user_guid}?address={$address}", 'title' => elgg_echo('bookmarks:this'), 'rel' => 'nofollow')); } // Register granular notification for this type register_notification_object('object', 'bookmarks', elgg_echo('bookmarks:new')); // Listen to notification events and supply a more useful message elgg_register_plugin_hook_handler('notify:entity:message', 'object', 'bookmarks_notify_message'); // Register a URL handler for bookmarks elgg_register_entity_url_handler('object', 'bookmarks', 'bookmark_url'); // Register entity type for search elgg_register_entity_type('object', 'bookmarks'); // Groups add_group_tool_option('bookmarks', elgg_echo('bookmarks:enablebookmarks'), true); elgg_extend_view('groups/tool_latest', 'bookmarks/group_module'); }
function widget_messages_init() { if (elgg_is_active_plugin("messages")) { elgg_register_widget_type("messages", elgg_echo("messages"), elgg_echo("widgets:messages:description"), "dashboard,index", false); elgg_register_plugin_hook_handler('widget_url', 'widget_manager', "widget_messages_url"); } }
/** * The Wire initialization */ function thewire_init() { // register the wire's JavaScript $thewire_js = elgg_get_simplecache_url('js', 'thewire'); elgg_register_js('elgg.thewire', $thewire_js, 'footer'); elgg_register_ajax_view('thewire/previous'); // add a site navigation item $item = new ElggMenuItem('thewire', elgg_echo('thewire'), 'thewire/all'); elgg_register_menu_item('site', $item); // owner block menu elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'thewire_owner_block_menu'); // remove edit and access and add thread, reply, view previous elgg_register_plugin_hook_handler('register', 'menu:entity', 'thewire_setup_entity_menu_items'); // Extend system CSS with our own styles, which are defined in the thewire/css view elgg_extend_view('css/elgg', 'thewire/css'); // Add a user's latest wire post to profile elgg_extend_view('profile/status', 'thewire/profile_status'); // Register a page handler, so we can have nice URLs elgg_register_page_handler('thewire', 'thewire_page_handler'); // Register a URL handler for thewire posts elgg_register_plugin_hook_handler('entity:url', 'object', 'thewire_set_url'); elgg_register_widget_type('thewire', elgg_echo('thewire'), elgg_echo("thewire:widget:desc")); // Register for search elgg_register_entity_type('object', 'thewire'); // Register for notifications elgg_register_notification_event('object', 'thewire'); elgg_register_plugin_hook_handler('prepare', 'notification:create:object:thewire', 'thewire_prepare_notification'); elgg_register_plugin_hook_handler('get', 'subscriptions', 'thewire_add_original_poster'); // Register actions $action_base = elgg_get_plugins_path() . 'thewire/actions'; elgg_register_action("thewire/add", "{$action_base}/add.php"); elgg_register_action("thewire/delete", "{$action_base}/delete.php"); elgg_register_plugin_hook_handler('unit_test', 'system', 'thewire_test'); elgg_register_event_handler('upgrade', 'system', 'thewire_run_upgrades'); }
/** * Initialize the theme * * @return void */ function theme_eersel_init() { elgg_register_css('font-awesome', 'mod/theme_eersel/vendors/font-awesome-4.3.0/css/font-awesome.min.css'); elgg_load_css('font-awesome'); // extend views elgg_extend_view("js/elgg", "js/theme_eersel"); elgg_extend_view("css/elgg", "css/theme_eersel"); elgg_extend_view("css/elgg", "css/theme_eersel_images"); elgg_extend_view("page/layouts/widgets", "theme_eersel/widgets_fix"); elgg_extend_view('icon/default', 'theme_eersel/group/icon', 400); elgg_unextend_view("page/elements/header", "search/header"); elgg_unextend_view("page/elements/owner_block/extend", "group_tools/owner_block"); // page handlers elgg_register_page_handler("theme_eersel", "theme_eersel_page_handler"); elgg_register_page_handler("profile", "theme_eersel_profile_page_handler"); elgg_register_js('jquery.flexslider', 'mod/theme_eersel/vendors/jquery.flexslider/jquery.flexslider-min.js'); elgg_load_js('jquery.flexslider'); // register widgets elgg_register_widget_type("profile_owner_block", elgg_echo("theme_eersel:widgets:profile_owner_block:title"), elgg_echo("theme_eersel:widgets:profile_owner_block:description"), "profile"); elgg_register_widget_type("index_photos", elgg_echo("theme_eersel:widgets:index_photos:title"), elgg_echo("theme_eersel:widgets:index_photos:description"), "index"); elgg_register_widget_type("index_sidebar", elgg_echo("theme_eersel:widgets:index_sidebar:title"), elgg_echo("theme_eersel:widgets:index_sidebar:description"), "index"); // register plugin hooks elgg_register_plugin_hook_handler("register", "menu:topbar", "theme_eersel_register_topbar_menu_handler"); elgg_register_plugin_hook_handler("prepare", "menu:owner_block", "theme_eersel_prepare_owner_block_menu_handler"); elgg_register_plugin_hook_handler('route', 'groups', 'theme_eersel_route_groups_handler'); // register events elgg_register_event_handler('pagesetup', 'system', 'theme_eersel_pagesetup'); // register admin menu item elgg_register_admin_menu_item("configure", "theme_eersel", "appearance"); // register actions elgg_register_action("theme_eersel/slider_upload", dirname(__FILE__) . "/actions/slider_upload.php", "admin"); elgg_register_action("theme_eersel/links", dirname(__FILE__) . "/actions/links.php", "admin"); }
function elgg_modifications_init() { // extend css elgg_extend_view("css/elgg", "elgg_modifications/css/site"); elgg_extend_view("page/elements/head", "elgg_modifications/extends/head", 400); elgg_extend_view("forms/uservalidationbyemail/bulk_action", "elgg_modifications/extends/uservalidationbyemail/bulk_action", 499); elgg_register_page_handler("accept_terms", "elgg_modifications_accept_terms_page_handler"); elgg_register_page_handler("generate_digischool_menu", "elgg_modifications_generate_digischool_menu_page_handler"); elgg_register_page_handler("sitemap.xml", "elgg_modifications_sitemap_page_handler"); elgg_register_page_handler("robots.txt", "elgg_modifications_robots_page_handler"); elgg_register_widget_type("pdokkaart", elgg_echo("widgets:pdokkaart:title"), elgg_echo("widgets:pdokkaart:description"), "index,groups,profile,dashboard", true); elgg_unregister_plugin_hook_handler("object:notifications", "object", "group_object_notifications_intercept"); // disable intercept elgg_unregister_plugin_hook_handler("notify:entity:message", "object", "groupforumtopic_notify_message"); // unregister default message elgg_unregister_plugin_hook_handler("notify:annotation:message", "group_topic_post", "discussion_create_reply_notification"); // unregister default message elgg_register_plugin_hook_handler("notify:entity:message", "object", "elgg_modifications_groupforumtopic_notify_message"); // register new message elgg_register_plugin_hook_handler("notify:annotation:message", "group_topic_post", "elgg_modifications_groupforumtopic_reply_message"); // register new message elgg_register_plugin_hook_handler("prepare", "menu:filter", "elgg_modifications_prepare_menu_filter_hook"); elgg_register_plugin_hook_handler("route", "notifications", "elgg_modifications_route_notifications_hook"); // allow tidypics widgets on group and index page elgg_register_widget_type('album_view', elgg_echo("tidypics:widget:albums"), elgg_echo("tidypics:widget:album_descr"), 'profile,index,groups'); elgg_register_widget_type('latest_photos', elgg_echo("tidypics:widget:latest"), elgg_echo("tidypics:widget:latest_descr"), 'profile,index,groups'); }
/** * Initialize the plugin */ function reportedcontent_init() { // Register a page handler, so we can have nice URLs elgg_register_page_handler('reportedcontent', 'reportedcontent_page_handler'); // Extend CSS elgg_extend_view('css/elgg', 'reportedcontent/css'); elgg_extend_view('css/admin', 'reportedcontent/admin_css'); // Extend footer with report content link if (elgg_is_logged_in()) { $href = "javascript:elgg.forward('reportedcontent/add'"; $href .= "+'?address='+encodeURIComponent(location.href)"; $href .= "+'&title='+encodeURIComponent(document.title));"; elgg_register_menu_item('extras', array('name' => 'report_this', 'href' => $href, 'title' => elgg_echo('reportedcontent:this:tooltip'), 'text' => elgg_view_icon('report-this'), 'priority' => 500, 'section' => 'default')); } elgg_register_plugin_hook_handler('register', 'menu:user_hover', 'reportedcontent_user_hover_menu'); // Add admin menu item // @todo Might want to move this to a 'feedback' section. something other than utils elgg_register_admin_menu_item('administer', 'reportedcontent', 'administer_utilities'); elgg_register_widget_type('reportedcontent', elgg_echo('reportedcontent'), elgg_echo('reportedcontent:widget:description'), array('admin')); // Register actions $action_path = elgg_get_plugins_path() . "reportedcontent/actions/reportedcontent"; elgg_register_action('reportedcontent/add', "{$action_path}/add.php"); elgg_register_action('reportedcontent/delete', "{$action_path}/delete.php", 'admin'); elgg_register_action('reportedcontent/archive', "{$action_path}/archive.php", 'admin'); }
/** * This function gets called during the system initialization * * @return void */ function blog_tools_init() { // extend css elgg_extend_view('css/elgg', 'css/blog_tools/site.css'); // extra blog views elgg_extend_view('object/blog', 'blog_tools/full/navigation'); elgg_extend_view('object/blog', 'blog_tools/full/owner'); elgg_extend_view('object/blog', 'blog_tools/full/related'); elgg_extend_view('blog/sidebar', 'blog_tools/full/related'); // register event handlers elgg_register_event_handler('upgrade', 'system', '\\ColdTrick\\BlogTools\\Upgrade::moveBlogIcons'); // register plugin hook handlers elgg_register_plugin_hook_handler('entity:url', 'object', '\\ColdTrick\\BlogTools\\Widgets::widgetUrl'); elgg_register_plugin_hook_handler('cron', 'daily', '\\ColdTrick\\BlogTools\\Cron::daily'); elgg_register_plugin_hook_handler('route', 'blog', '\\ColdTrick\\BlogTools\\Router::blog'); elgg_register_plugin_hook_handler('register', 'menu:entity', '\\ColdTrick\\BlogTools\\EntityMenu::register'); elgg_register_plugin_hook_handler('group_tool_widgets', 'widget_manager', '\\ColdTrick\\BlogTools\\Widgets::groupTools'); elgg_register_plugin_hook_handler('permissions_check:comment', 'object', '\\ColdTrick\\BlogTools\\Access::blogCanComment'); elgg_register_plugin_hook_handler('view_vars', 'input/form', '\\ColdTrick\\BlogTools\\Views::blogEditFormVars'); // extend editmenu elgg_extend_view('editmenu', 'blog_tools/editmenu'); // add featured filter menu item elgg_register_menu_item('filter', ElggMenuItem::factory(['name' => 'featured', 'text' => elgg_echo('status:featured'), 'context' => 'blog', 'href' => 'blog/featured', 'priority' => 600])); // register index widget elgg_register_widget_type('index_blog', elgg_echo('blog'), elgg_echo('blog_tools:widgets:index_blog:description'), ['index'], true); elgg_register_widget_type('blog', elgg_echo('blog'), elgg_echo('blog:widget:description'), ['profile', 'dashboard', 'groups']); // overrule blog actions elgg_register_action('blog/save', dirname(__FILE__) . '/actions/blog/save.php'); elgg_register_action('blog/auto_save_revision', dirname(__FILE__) . '/actions/blog/auto_save_revision.php'); // register actions elgg_register_action('blog_tools/toggle_metadata', dirname(__FILE__) . '/actions/toggle_metadata.php', 'admin'); elgg_register_action('blog_tools/upgrades/move_icons', dirname(__FILE__) . '/actions/upgrades/move_icons.php', 'admin'); }
/** * Bookmark init */ function bookmarks_init() { $root = dirname(__FILE__); elgg_register_library('elgg:bookmarks', "{$root}/lib/bookmarks.php"); // actions $action_path = "{$root}/actions/bookmarks"; elgg_register_action('bookmarks/save', "{$action_path}/save.php"); elgg_register_action('bookmarks/delete', "{$action_path}/delete.php"); elgg_register_action('bookmarks/share', "{$action_path}/share.php"); // menus elgg_register_menu_item('site', array('name' => 'bookmarks', 'text' => elgg_echo('bookmarks'), 'href' => 'bookmarks/all')); elgg_register_plugin_hook_handler('register', 'menu:page', 'bookmarks_page_menu'); elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'bookmarks_owner_block_menu'); elgg_register_page_handler('bookmarks', 'bookmarks_page_handler'); elgg_extend_view('elgg.css', 'bookmarks/css'); elgg_extend_view('elgg.js', 'bookmarks/js'); elgg_register_widget_type('bookmarks', elgg_echo('bookmarks'), elgg_echo('bookmarks:widget:description')); if (elgg_is_logged_in()) { $user_guid = elgg_get_logged_in_user_guid(); $address = urlencode(current_page_url()); elgg_register_menu_item('extras', array('name' => 'bookmark', 'text' => elgg_view_icon('push-pin-alt'), 'href' => "bookmarks/add/{$user_guid}?address={$address}", 'title' => elgg_echo('bookmarks:this'), 'rel' => 'nofollow')); } // Register for notifications elgg_register_notification_event('object', 'bookmarks', array('create')); elgg_register_plugin_hook_handler('prepare', 'notification:create:object:bookmarks', 'bookmarks_prepare_notification'); // Register bookmarks view for ecml parsing elgg_register_plugin_hook_handler('get_views', 'ecml', 'bookmarks_ecml_views_hook'); // Register a URL handler for bookmarks elgg_register_plugin_hook_handler('entity:url', 'object', 'bookmark_set_url'); // Register entity type for search elgg_register_entity_type('object', 'bookmarks'); // Groups add_group_tool_option('bookmarks', elgg_echo('bookmarks:enablebookmarks'), true); elgg_extend_view('groups/tool_latest', 'bookmarks/group_module'); }
function widget_content_by_tag_init() { if (elgg_is_active_plugin("blog") || elgg_is_active_plugin("file") || elgg_is_active_plugin("pages")) { elgg_register_widget_type("content_by_tag", elgg_echo("widgets:content_by_tag:name"), elgg_echo("widgets:content_by_tag:description"), "profile,dashboard,index,groups", true); } elgg_extend_view("css/elgg", "widgets/content_by_tag/css"); }
function tagcloud_init() { elgg_extend_view('theme_sandbox/components', 'tagcloud/theme_sandbox/component'); elgg_extend_view('css/elgg', 'css/elgg/tagcloud.css'); elgg_register_page_handler('tags', 'tagcloud_tags_page_handler'); elgg_register_widget_type('tagcloud', elgg_echo('tagcloud:widget:title'), elgg_echo('tagcloud:widget:description')); }
/** * Init, system event */ static function init() { elgg_register_action('widgets/get', elgg_get_config('pluginspath') . __CLASS__ . '/actions/widgets/get.php'); $widget = 'version'; elgg_register_widget_type($widget, elgg_echo("admin:widget:{$widget}"), elgg_echo("admin:widget:{$widget}:help"), 'admin'); elgg_extend_view('js/admin', 'js/ui.widgets.get'); }
/** * initialization of plugin * * @return void */ function advanced_statistics_init() { // register page handler for nice URLs elgg_register_page_handler("advanced_statistics", "advanced_statistics_page_handler"); if (elgg_is_admin_logged_in()) { elgg_register_admin_menu_item('administer', 'users', 'advanced_statistics'); elgg_register_admin_menu_item('administer', 'groups', 'advanced_statistics'); elgg_register_admin_menu_item('administer', 'content', 'advanced_statistics'); elgg_register_admin_menu_item('administer', 'activity', 'advanced_statistics'); elgg_register_admin_menu_item('administer', 'widgets', 'advanced_statistics'); elgg_register_admin_menu_item('administer', 'system', 'advanced_statistics'); elgg_extend_view("js/admin", "js/advanced_statistics/admin"); $vendors = elgg_get_site_url() . "mod/advanced_statistics/vendors/"; elgg_register_js("excanvas", $vendors . "jqplot/excanvas.min.js"); // only for IE < 9 // jqplot base library elgg_register_js("jquery.jqplot", $vendors . "jqplot/jquery.jqplot.js"); // jqplot plugins elgg_register_js("jquery.jqplot.barRenderer", $vendors . "jqplot/plugins/jqplot.barRenderer.js"); elgg_register_js("jquery.jqplot.pieRenderer", $vendors . "jqplot/plugins/jqplot.pieRenderer.js"); elgg_register_js("jquery.jqplot.canvasAxisTickRenderer", $vendors . "jqplot/plugins/jqplot.canvasAxisTickRenderer.js"); elgg_register_js("jquery.jqplot.canvasTextRenderer", $vendors . "jqplot/plugins/jqplot.canvasTextRenderer.js"); elgg_register_js("jquery.jqplot.categoryAxisRenderer", $vendors . "jqplot/plugins/jqplot.categoryAxisRenderer.js"); elgg_register_js("jquery.jqplot.dateAxisRenderer", $vendors . "jqplot/plugins/jqplot.dateAxisRenderer.js"); elgg_register_js("jquery.jqplot.pointLabels", $vendors . "jqplot/plugins/jqplot.pointLabels.js"); elgg_register_js("jquery.jqplot.highlighter", $vendors . "jqplot/plugins/jqplot.highlighter.js"); elgg_register_simplecache_view("css/advanced_statistics/jqplot"); elgg_register_css("jquery.jqplot", elgg_get_simplecache_url("css", "advanced_statistics/jqplot")); // register admin widgets elgg_register_widget_type("advanced_statistics", elgg_echo("advanced_statistics:widgets:advanced_statistics:title"), elgg_echo("advanced_statistics:widgets:advanced_statistics:description"), array("admin"), true); elgg_register_widget_type("online_user_count", elgg_echo("advanced_statistics:widgets:online_user_count:title"), elgg_echo("advanced_statistics:widgets:online_user_count:description"), array("admin")); elgg_register_ajax_view("widgets/online_user_count/content"); } }
/** * Called on the 'init' 'system' event * * @return void */ function simplesaml_init() { // load libraries elgg_load_library("simplesamlphp"); require_once dirname(__FILE__) . "/lib/events.php"; require_once dirname(__FILE__) . "/lib/functions.php"; require_once dirname(__FILE__) . "/lib/hooks.php"; require_once dirname(__FILE__) . "/lib/page_handlers.php"; // check for force authentication elgg_extend_view("page/default", "simplesaml/force_authentication", 200); elgg_extend_view("page/walled_garden", "simplesaml/force_authentication", 200); elgg_register_library("pgregg.ipcheck", dirname(__FILE__) . "/vendors/pgregg/ip_check.php"); // extend CSS/JS elgg_extend_view("js/admin", "js/simplesaml/admin"); // allow login elgg_extend_view("forms/login", "simplesaml/login"); // register page_handler for nice URL's elgg_register_page_handler("saml", "simplesaml_page_handler"); // register widgets elgg_register_widget_type("simplesaml", elgg_echo("login"), elgg_echo("simplesaml:widget:description"), "index", true); // register events elgg_register_event_handler("login", "user", "simplesaml_login_event_handler"); // register plugin hooks elgg_register_plugin_hook_handler("public_pages", "walled_garden", "simplesaml_walled_garden_hook"); elgg_register_plugin_hook_handler("widget_url", "widget_manager", "simplesaml_widget_url_hook"); elgg_register_plugin_hook_handler("setting", "plugin", "simplesaml_plugin_setting_save_hook"); elgg_register_plugin_hook_handler("action", "logout", "simplesaml_logout_action_hook"); // register actions elgg_register_action("simplesaml/register", dirname(__FILE__) . "/actions/register.php", "public"); elgg_register_action("simplesaml/unlink", dirname(__FILE__) . "/actions/unlink.php"); }
/** * Called during system init * * @return void */ function pages_tools_init() { // register DOM PDF as a library elgg_register_library("dompdf", dirname(__FILE__) . "/vendor/dompdf/dompdf/dompdf_config.inc.php"); // extend site css elgg_extend_view("css/elgg", "css/pages_tools/site"); // extend site js elgg_extend_view("js/elgg", "js/pages_tools/site"); // register JS library elgg_register_js("jquery.tree", elgg_get_site_url() . "mod/pages_tools/vendors/jstree/jquery.tree.min.js"); elgg_register_css("jquery.tree", elgg_get_site_url() . "mod/pages_tools/vendors/jstree/themes/classic/style.css"); // add widgets (overrule default pages widget, to add group support) elgg_register_widget_type("pages", elgg_echo("pages"), elgg_echo("pages:widget:description"), array("profile", "dashboard", "groups")); elgg_register_widget_type("index_pages", elgg_echo("pages"), elgg_echo("pages_tools:widgets:index_pages:description"), array("index"), true); // register plugin hooks elgg_register_plugin_hook_handler("route", "pages", "pages_tools_route_pages_hook"); elgg_register_plugin_hook_handler("register", "menu:entity", "pages_tools_entity_menu_hook"); elgg_register_plugin_hook_handler("permissions_check:comment", "object", "pages_tools_permissions_comment_hook"); elgg_register_plugin_hook_handler("widget_url", "widget_manager", "pages_tools_widget_url_hook"); elgg_register_plugin_hook_handler("cron", "daily", "pages_tools_daily_cron_hook"); // events elgg_register_event_handler('create', 'object', 'pages_tools_cache_handler'); elgg_register_event_handler('update', 'object', 'pages_tools_cache_handler'); elgg_register_event_handler('delete', 'object', 'pages_tools_cache_handler'); // register actions elgg_register_action("pages/export", dirname(__FILE__) . "/actions/export.php", "public"); elgg_register_action("pages/reorder", dirname(__FILE__) . "/actions/reorder.php"); elgg_register_action("pages_tools/update_edit_notice", dirname(__FILE__) . "/actions/update_edit_notice.php"); // overrule action elgg_register_action("pages/edit", dirname(__FILE__) . "/actions/pages/edit.php"); elgg_register_action("pages/delete", dirname(__FILE__) . "/actions/pages/delete.php"); }
function widget_index_pages_init() { if (elgg_is_active_plugin("pages")) { elgg_register_widget_type("index_pages", elgg_echo("pages"), elgg_echo("widget_manager:widgets:index_pages:description"), "index", true); elgg_register_plugin_hook_handler('widget_url', 'widget_manager', "widget_index_pages_url"); } }
function widget_favorites_init() { elgg_register_widget_type("favorites", elgg_echo("widgets:favorites:title"), elgg_echo("widgets:favorites:description"), "dashboard"); elgg_register_event_handler("pagesetup", "system", "widget_favorites_pagesetup"); elgg_register_action("favorite/toggle", dirname(__FILE__) . "/actions/toggle.php"); elgg_extend_view("js/elgg", "widgets/favorites/js"); }
/** * Initializes the plugin * * @return void */ function search_advanced_init() { // page handler for search actions and results elgg_register_page_handler("search_advanced", "search_advanced_page_handler"); elgg_register_page_handler("search", "search_advanced_search_page_handler"); // search hooks search_advanced_unregister_default_search_hooks(); search_advanced_register_search_hooks(); // unregister object:page from search elgg_unregister_entity_type("object", "page_top"); // views elgg_extend_view("css/elgg", "css/search_advanced/site"); elgg_extend_view("js/elgg", "js/search_advanced/site"); // widgets elgg_register_widget_type("search", elgg_echo("search"), elgg_echo("search"), array("profile", "dashboard", "index", "groups"), true); elgg_register_widget_type("search_user", elgg_echo("search_advanced:widgets:search_user:title"), elgg_echo("search_advanced:widgets:search_user:description"), array("dashboard", "index")); if (elgg_is_active_plugin("categories")) { // make universal categories searchable add_translation(get_current_language(), array("tag_names:universal_categories" => elgg_echo("categories"))); elgg_register_tag_metadata_name("universal_categories"); } // hooks and events to clear cache // register hooks elgg_register_plugin_hook_handler("action", "admin/plugins/activate", "search_advanced_clear_keywords_cache"); elgg_register_plugin_hook_handler("action", "admin/plugins/deactivate", "search_advanced_clear_keywords_cache"); elgg_register_plugin_hook_handler("action", "admin/plugins/activate_all", "search_advanced_clear_keywords_cache"); elgg_register_plugin_hook_handler("action", "admin/plugins/deactivate_all", "search_advanced_clear_keywords_cache"); elgg_register_plugin_hook_handler("action", "plugins/settings/save", "search_advanced_clear_keywords_cache"); elgg_register_plugin_hook_handler("register", "menu:search_type_selection", "search_advanced_register_menu_type_selection"); // register events elgg_register_event_handler("upgrade", "system", "search_advanced_clear_keywords_cache"); // actions elgg_register_action("search_advanced/settings/save", dirname(__FILE__) . "/actions/plugins/settings/save.php", "admin"); }
function polls_init() { elgg_register_library('elgg:polls', elgg_get_plugins_path() . 'polls/models/model.php'); // Set up menu for logged in users if (elgg_is_logged_in()) { $item = new ElggMenuItem('polls', elgg_echo('polls'), 'polls/owner/' . elgg_get_logged_in_user_entity()->username); } else { $item = new ElggMenuItem('polls', elgg_echo('poll'), 'polls/all'); } elgg_register_menu_item('site', $item); // Extend system CSS with our own styles, which are defined in the polls/css view elgg_extend_view('css/elgg', 'polls/css'); // Extend hover-over menu elgg_extend_view('profile/menu/links', 'polls/menu'); // Register a page handler, so we can have nice URLs elgg_register_page_handler('polls', 'polls_page_handler'); // Register a URL handler for poll posts elgg_register_entity_url_handler('object', 'poll', 'polls_url'); // notifications $elgg_version = explode('.', get_version(true)); if ($elgg_version[1] > 8) { $send_notification = elgg_get_plugin_setting('send_notification', 'polls'); if (!$send_notification || $send_notification != 'no') { elgg_register_notification_event('object', 'poll'); elgg_register_plugin_hook_handler('prepare', 'notification:create:object:poll', 'polls_prepare_notification'); } } // add link to owner block elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'polls_owner_block_menu'); elgg_register_plugin_hook_handler('widget_url', 'widget_manager', 'polls_widget_url_handler'); // Register entity type elgg_register_entity_type('object', 'poll'); // register the JavaScript $js = elgg_get_simplecache_url('js', 'polls/js'); elgg_register_simplecache_view('js/polls/js'); elgg_register_js('elgg.polls', $js); // add group widget $group_polls = elgg_get_plugin_setting('group_polls', 'polls'); if (!$group_polls || $group_polls != 'no') { elgg_extend_view('groups/tool_latest', 'polls/group_module'); } if (!$group_polls || $group_polls == 'yes_default') { add_group_tool_option('polls', elgg_echo('polls:enable_polls'), TRUE); } else { if ($group_polls == 'yes_not_default') { add_group_tool_option('polls', elgg_echo('polls:enable_polls'), FALSE); } } //add widgets elgg_register_widget_type('poll', elgg_echo('polls:my_widget_title'), elgg_echo('polls:my_widget_description'), "profile,groups"); elgg_register_widget_type('latestPolls', elgg_echo('polls:latest_widget_title'), elgg_echo('polls:latest_widget_description'), "index,profile,dashboard,groups"); elgg_register_widget_type('poll_individual', elgg_echo('polls:individual'), elgg_echo('poll_individual_group:widget:description'), "index,profile,dashboard,groups"); // Register actions $action_path = elgg_get_plugins_path() . 'polls/actions/polls'; elgg_register_action("polls/add", "{$action_path}/add.php"); elgg_register_action("polls/edit", "{$action_path}/edit.php"); elgg_register_action("polls/delete", "{$action_path}/delete.php"); elgg_register_action("polls/vote", "{$action_path}/vote.php"); }
/** * Initialize the groups plugin. */ function groups_init() { elgg_register_library('elgg:groups', elgg_get_plugins_path() . 'groups/lib/groups.php'); // register group entities for search elgg_register_entity_type('group', ''); // Set up the menu $item = new ElggMenuItem('groups', elgg_echo('groups'), 'groups/all'); elgg_register_menu_item('site', $item); // Register a page handler, so we can have nice URLs elgg_register_page_handler('groups', 'groups_page_handler'); // Register URL handlers for groups elgg_register_entity_url_handler('group', 'all', 'groups_url'); elgg_register_plugin_hook_handler('entity:icon:url', 'group', 'groups_icon_url_override'); // Register an icon handler for groups elgg_register_page_handler('groupicon', 'groups_icon_handler'); // Register some actions $action_base = elgg_get_plugins_path() . 'groups/actions/groups'; elgg_register_action("groups/edit", "{$action_base}/edit.php"); elgg_register_action("groups/delete", "{$action_base}/delete.php"); elgg_register_action("groups/featured", "{$action_base}/featured.php", 'admin'); $action_base .= '/membership'; elgg_register_action("groups/invite", "{$action_base}/invite.php"); elgg_register_action("groups/join", "{$action_base}/join.php"); elgg_register_action("groups/leave", "{$action_base}/leave.php"); elgg_register_action("groups/killrequest", "{$action_base}/delete_request.php"); elgg_register_action("groups/killinvitation", "{$action_base}/delete_invite.php"); elgg_register_action("groups/addtogroup", "{$action_base}/add.php"); // Add some widgets elgg_register_widget_type('a_users_groups', elgg_echo('groups:widget:membership'), elgg_echo('groups:widgets:description')); // add group activity tool option add_group_tool_option('activity', elgg_echo('groups:enableactivity'), true); elgg_extend_view('groups/tool_latest', 'groups/profile/activity_module'); // add link to owner block elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'groups_activity_owner_block_menu'); // group entity menu elgg_register_plugin_hook_handler('register', 'menu:entity', 'groups_entity_menu_setup'); //extend some views elgg_extend_view('css/elgg', 'groups/css'); elgg_extend_view('js/elgg', 'groups/js'); // Access permissions elgg_register_plugin_hook_handler('access:collections:write', 'all', 'groups_write_acl_plugin_hook'); //elgg_register_plugin_hook_handler('access:collections:read', 'all', 'groups_read_acl_plugin_hook'); // Register profile menu hook elgg_register_plugin_hook_handler('profile_menu', 'profile', 'forum_profile_menu'); elgg_register_plugin_hook_handler('profile_menu', 'profile', 'activity_profile_menu'); // allow ecml in discussion and profiles elgg_register_plugin_hook_handler('get_views', 'ecml', 'groups_ecml_views_hook'); elgg_register_plugin_hook_handler('get_views', 'ecml', 'groupprofile_ecml_views_hook'); // Register a handler for create groups elgg_register_event_handler('create', 'group', 'groups_create_event_listener'); // Register a handler for delete groups elgg_register_event_handler('delete', 'group', 'groups_delete_event_listener'); elgg_register_event_handler('join', 'group', 'groups_user_join_event_listener'); elgg_register_event_handler('leave', 'group', 'groups_user_leave_event_listener'); elgg_register_event_handler('pagesetup', 'system', 'groups_setup_sidebar_menus'); elgg_register_event_handler('annotate', 'all', 'group_object_notifications'); elgg_register_plugin_hook_handler('access:collections:add_user', 'collection', 'groups_access_collection_override'); elgg_register_event_handler('upgrade', 'system', 'groups_run_upgrades'); }