function initialize()
 {
     register_page_handler(new MW_SpecialUploadPageHandler());
     $dataspace_def = new MW_DataSpaceDefinition(MW_DS_UPLOADS, true, MW_RESOURCE_CONTENT_TYPE_BINARY);
     register_dataspace($dataspace_def);
     return true;
 }
Example #2
0
/**
 * Start the site pages plugin.
 */
function sitepages_init()
{
    require_once dirname(__FILE__) . '/sitepages_functions.php';
    global $CONFIG;
    // register our subtype
    run_function_once('sitepages_runonce');
    // Register a page handler, so we can have nice URLs
    register_page_handler('sitepages', 'sitepages_page_handler');
    // Register a URL handler for external pages
    register_entity_url_handler('sitepages_url', 'object', 'sitepages');
    elgg_extend_view('footer/links', 'sitepages/footer_menu');
    elgg_extend_view('metatags', 'sitepages/metatags');
    // Replace the default index page if user has requested
    if (get_plugin_setting('ownfrontpage', 'sitepages') == 'yes') {
        register_plugin_hook('index', 'system', 'sitepages_custom_index');
    }
    // parse views for keywords
    register_plugin_hook('display', 'view', 'sitepages_parse_view');
    // register the views we want to parse for the keyword replacement
    // right now this is just the custom front page, but we can
    // expand it to the other pages later.
    $CONFIG->sitepages_parse_views = array('sitepages/custom_frontpage');
    // an example of how to register and respond to the get_keywords trigger
    register_plugin_hook('get_keywords', 'sitepages', 'sitepages_keyword_hook');
    // grab the list of keywords and their views from plugins
    if ($keywords = trigger_plugin_hook('get_keywords', 'sitepages', NULL, array())) {
        $CONFIG->sitepages_keywords = $keywords;
    }
    register_action("sitepages/add", FALSE, $CONFIG->pluginspath . "sitepages/actions/add.php");
    register_action("sitepages/addfront", FALSE, $CONFIG->pluginspath . "sitepages/actions/addfront.php");
    register_action("sitepages/addmeta", FALSE, $CONFIG->pluginspath . "sitepages/actions/addmeta.php");
    register_action("sitepages/edit", FALSE, $CONFIG->pluginspath . "sitepages/actions/edit.php");
    register_action("sitepages/delete", FALSE, $CONFIG->pluginspath . "sitepages/actions/delete.php");
}
/**
 * Initialise search helper functions.
 *
 */
function search_init()
{
    global $CONFIG;
    require_once 'search_hooks.php';
    // page handler for search actions and results
    register_page_handler('search', 'search_page_handler');
    // register some default search hooks
    register_plugin_hook('search', 'object', 'search_objects_hook');
    register_plugin_hook('search', 'user', 'search_users_hook');
    // @todo pull this out into groups
    register_plugin_hook('search', 'group', 'search_groups_hook');
    // tags and comments are a bit different.
    // register a search types and a hooks for them.
    register_plugin_hook('search_types', 'get_types', 'search_custom_types_tags_hook');
    register_plugin_hook('search', 'tags', 'search_tags_hook');
    register_plugin_hook('search_types', 'get_types', 'search_custom_types_comments_hook');
    register_plugin_hook('search', 'comments', 'search_comments_hook');
    // get server min and max allowed chars for ft searching
    $CONFIG->search_info = array();
    // can't use get_data() here because some servers don't have these globals set,
    // which throws a db exception.
    $r = mysql_query('SELECT @@ft_min_word_len as min, @@ft_max_word_len as max');
    if ($r && ($word_lens = mysql_fetch_assoc($r))) {
        $CONFIG->search_info['min_chars'] = $word_lens['min'];
        $CONFIG->search_info['max_chars'] = $word_lens['max'];
    } else {
        // uhhh these are good numbers.
        $CONFIG->search_info['min_chars'] = 4;
        $CONFIG->search_info['max_chars'] = 90;
    }
    // add in CSS for search elements
    elgg_extend_view('css', 'search/css');
}
/**
 * thewire initialisation
 *
 * These parameters are required for the event API, but we won't use them:
 * 
 * @param unknown_type $event
 * @param unknown_type $object_type
 * @param unknown_type $object
 */
function thewire_init()
{
    // Load system configuration
    global $CONFIG;
    // Set up menu for logged in users
    if (isloggedin()) {
        add_menu(elgg_echo('thewire'), $CONFIG->wwwroot . "mod/thewire/everyone.php");
    }
    // Extend system CSS with our own styles, which are defined in the thewire/css view
    extend_view('css', 'thewire/css');
    //extend views
    extend_view('activity/thewire', 'thewire/activity_view');
    extend_view('profile/status', 'thewire/profile_status');
    // Register a page handler, so we can have nice URLs
    register_page_handler('thewire', 'thewire_page_handler');
    // Register a URL handler for thewire posts
    register_entity_url_handler('thewire_url', 'object', 'thewire');
    // Your thewire widget
    add_widget_type('thewire', elgg_echo("thewire:read"), elgg_echo("thewire:yourdesc"));
    // Register entity type
    register_entity_type('object', 'thewire');
    // Listen for SMS create event
    register_elgg_event_handler('create', 'object', 'thewire_incoming_sms');
    // Register granular notification for this type
    if (is_callable('register_notification_object')) {
        register_notification_object('object', 'thewire', elgg_echo('thewire:newpost'));
    }
    // Listen to notification events and supply a more useful message for SMS'
    register_plugin_hook('notify:entity:message', 'object', 'thewire_notify_message');
}
Example #5
0
function tasks_init()
{
    // Grab the config file
    global $CONFIG;
    extend_view('metatags', 'tasks/js');
    //add a tools menu option
    if (isloggedin()) {
        add_menu(elgg_echo('tasks'), $CONFIG->wwwroot . "pg/tasks/" . $_SESSION['user']->username . '/items');
    }
    // Register a page handler, so we can have nice URLs
    register_page_handler('tasks', 'tasks_page_handler');
    // Add our CSS
    extend_view('css', 'tasks/css');
    // Add to groups context
    extend_view('groups/left_column', 'tasks/groupprofile_tasks');
    // Register granular notification for this type
    if (is_callable('register_notification_object')) {
        register_notification_object('object', 'tasks', elgg_echo('tasks:new'));
    }
    // Listen to notification events and supply a more useful message
    register_plugin_hook('notify:entity:message', 'object', 'tasks_notify_message');
    // Register a URL handler for shared items
    register_entity_url_handler('task_url', 'object', 'tasks');
    // Shares widget
    add_widget_type('tasks', elgg_echo("tasks:recent"), elgg_echo("tasks:widget:description"));
    // Register entity type
    register_entity_type('object', 'tasks');
    // Add group menu option
    add_group_tool_option('tasks', elgg_echo('tasks:enabletasks'), true);
}
Example #6
0
/**
 * Blog extended initialization
 *
 * Register css extensions, contentes view for groups, widgets and event handlers
 */
function blogextended_init()
{
    global $CONFIG;
    extend_view("css", "blogextended/css");
    extend_view("blog/fields_before", "blog/forms/type");
    extend_view("blog/fields_before", "groups/groupselector");
    //extend_view('groups/left_column', 'groups/groupcontents',1);
    add_widget_type('blog', elgg_echo('blog:widget:title'), elgg_echo('blog:widget:description'));
    register_elgg_event_handler("create", "object", "blog_type_handler");
    register_elgg_event_handler("update", "object", "blog_type_handler");
    register_elgg_event_handler("create", "object", "group_selector_handler");
    register_elgg_event_handler("update", "object", "group_selector_handler");
    register_page_handler('gblog', 'gblog_page_handler');
    if (is_plugin_enabled("itemicon")) {
        if (!isset($CONFIG->itemicon)) {
            $CONFIG->itemicon[] = array();
        }
        $CONFIG->itemicon[] = "blog";
        extend_view("blog/fields_after", "itemicon/add");
    }
    $options = array("" => "All", "WorkStories" => "Work Stories", "HowTo" => "How To's", "GroupGuides" => "Group Guides", "ManagingProjects" => "Managing a Project", "TellingYourStory" => "Telling your Story");
    $CONFIG->BLOG_TYPES = $options;
    if (file_exists(dirname(__FILE__) . "/config.php")) {
        @(require_once dirname(__FILE__) . "/config.php");
    }
    $CONFIG->blogextended = $options;
}
Example #7
0
/**
 * Blog initialisation
 *
 * These parameters are required for the event API, but we won't use them:
 * 
 * @param unknown_type $event
 * @param unknown_type $object_type
 * @param unknown_type $object
 */
function blog_init()
{
    // Load system configuration
    global $CONFIG;
    // Set up menu for logged in users
    if (isloggedin()) {
        add_menu(elgg_echo('blogs'), $CONFIG->wwwroot . "pg/blog/" . $_SESSION['user']->username);
        // And for logged out users
    } else {
        add_menu(elgg_echo('blog'), $CONFIG->wwwroot . "mod/blog/everyone.php", array());
    }
    // Extend system CSS with our own styles, which are defined in the blog/css view
    extend_view('css', 'blog/css');
    // Extend hover-over menu
    extend_view('profile/menu/links', 'blog/menu');
    // Register a page handler, so we can have nice URLs
    register_page_handler('blog', 'blog_page_handler');
    // Register a URL handler for blog posts
    register_entity_url_handler('blog_url', 'object', 'blog');
    // Register this plugin's object for sending pingbacks
    register_plugin_hook('pingback:object:subtypes', 'object', 'blog_pingback_subtypes');
    // Register granular notification for this type
    if (is_callable('register_notification_object')) {
        register_notification_object('object', 'blog', elgg_echo('blog:newpost'));
    }
    // Listen to notification events and supply a more useful message
    register_plugin_hook('notify:entity:message', 'object', 'blog_notify_message');
    // Listen for new pingbacks
    register_elgg_event_handler('create', 'object', 'blog_incoming_ping');
    // Register entity type
    register_entity_type('object', 'blog');
}
Example #8
0
/**
 * File plugin initialisation functions.
 */
function file_init()
{
    // Get config
    global $CONFIG;
    // Set up menu for logged in users
    if (isloggedin()) {
        add_menu(elgg_echo('file'), $CONFIG->wwwroot . "pg/file/" . $_SESSION['user']->username);
    }
    // Extend CSS
    extend_view('css', 'file/css');
    // Extend hover-over and profile menu
    extend_view('profile/menu/links', 'file/menu');
    extend_view('groups/left_column', 'file/groupprofile_files');
    extend_view('dgroups/left_column', 'file/groupprofile_files');
    // Register a page handler, so we can have nice URLs
    register_page_handler('file', 'file_page_handler');
    // Add a new file widget
    add_widget_type('filerepo', elgg_echo("file:widget"), elgg_echo("file:widget:description"));
    // Register a URL handler for files
    register_entity_url_handler('file_url', 'object', 'file');
    // Register granular notification for this type
    if (is_callable('register_notification_object')) {
        register_notification_object('object', 'file', elgg_echo('file:newupload'));
    }
    // Listen to notification events and supply a more useful message
    register_plugin_hook('notify:entity:message', 'object', 'file_notify_message');
    // add the group files tool option
    add_group_tool_option('files', elgg_echo('groups:enablefiles'), true);
    // Register entity type
    register_entity_type('object', 'file');
}
/**
 * Messages initialisation
 *
 * These parameters are required for the event API, but we won't use them:
 * 
 * @param unknown_type $event
 * @param unknown_type $object_type
 * @param unknown_type $object
 */
function messages_init()
{
    // Load system configuration
    global $CONFIG;
    //add submenu options
    if (get_context() == "messages") {
        add_submenu_item(elgg_echo('messages:compose'), $CONFIG->wwwroot . "mod/messages/send.php");
        add_submenu_item(elgg_echo('messages:inbox'), $CONFIG->wwwroot . "pg/messages/" . $_SESSION['user']->username);
        add_submenu_item(elgg_echo('messages:sentmessages'), $CONFIG->wwwroot . "mod/messages/sent.php");
    }
    // Extend system CSS with our own styles, which are defined in the shouts/css view
    extend_view('css', 'messages/css');
    // Extend the elgg topbar
    extend_view('elgg_topbar/extend', 'messages/topbar');
    // Register a page handler, so we can have nice URLs
    register_page_handler('messages', 'messages_page_handler');
    // Register a URL handler for shouts posts
    register_entity_url_handler('messages_url', 'object', 'messages');
    // Extend hover-over and profile menu
    extend_view('profile/menu/links', 'messages/menu');
    // Register a notification handler for site messages
    register_notification_handler("site", "messages_site_notify_handler");
    register_plugin_hook('notify:entity:message', 'object', 'messages_notification_msg');
    if (is_callable('register_notification_object')) {
        register_notification_object('object', 'messages', elgg_echo('messages:new'));
    }
    // Shares widget
    //  add_widget_type('messages',elgg_echo("messages:recent"),elgg_echo("messages:widget:description"));
    // Override metadata permissions
    register_plugin_hook('permissions_check:metadata', 'object', 'messages_can_edit_metadata');
}
function bookmarks_init()
{
    // Grab the config global
    global $CONFIG;
    //add a tools menu option
    if (isloggedin()) {
        add_menu(elgg_echo('bookmarks'), $CONFIG->wwwroot . "pg/bookmarks/" . $_SESSION['user']->username . '/items');
        // add "bookmark this" to owner block
        elgg_extend_view('owner_block/extend', 'bookmarks/owner_block');
    }
    // Register a page handler, so we can have nice URLs
    register_page_handler('bookmarks', 'bookmarks_page_handler');
    // Add our CSS
    elgg_extend_view('css', 'bookmarks/css');
    // Register granular notification for this type
    if (is_callable('register_notification_object')) {
        register_notification_object('object', 'bookmarks', elgg_echo('bookmarks:new'));
    }
    // Listen to notification events and supply a more useful message
    register_plugin_hook('notify:entity:message', 'object', 'bookmarks_notify_message');
    // Register a URL handler for shared items
    register_entity_url_handler('bookmark_url', 'object', 'bookmarks');
    // Shares widget
    add_widget_type('bookmarks', elgg_echo("bookmarks:recent"), elgg_echo("bookmarks:widget:description"));
    // Register entity type
    register_entity_type('object', 'bookmarks');
    // Add group menu option
    add_group_tool_option('bookmarks', elgg_echo('bookmarks:enablebookmarks'), true);
}
Example #11
0
 function initialize()
 {
     register_page_handler(new MW_CorePagePageHandler());
     $dataspace_def = new MW_DataSpaceDefinition(MW_DS_PAGES, true, MW_RESOURCE_CONTENT_TYPE_TEXT);
     register_dataspace($dataspace_def);
     return true;
 }
Example #12
0
/**
 * init function; 
 *
 */
function diapos_init()
{
    // Get config
    global $CONFIG;
    register_page_handler('diapos', 'diapos_page_handler');
    // Add menu link
    add_menu(elgg_echo('diapos'), $CONFIG->wwwroot . "pg/diapos/");
}
/**
 * Initialise the diagnostics tool
 *
 */
function diagnostics_init()
{
    global $CONFIG;
    // Register a page handler, so we can have nice URLs
    register_page_handler('diagnostics', 'diagnostics_page_handler');
    // Register some actions
    register_action("diagnostics/download", false, $CONFIG->pluginspath . "diagnostics/actions/download.php");
}
/**
 * Profile init function; sets up the profile functions
 *
 */
function flexprofile_init()
{
    // override profile views
    set_view_location("profile/userdetails", dirname(__FILE__) . '/views/');
    set_view_location("profile/edit", dirname(__FILE__) . '/views/');
    // Register a page handler, so we can have nice URLs
    register_page_handler('flexprofile', 'flexprofile_page_handler');
}
Example #15
0
/**
 * Email user validation plugin.
 * Non-admin or admin created accounts are invalid until their email address is confirmed.
 *
 * @package ElggUserValidationByEmail
 * @author Curverider Ltd
 * @link http://elgg.com/
 */
function uservalidationbyemail_init()
{
    global $CONFIG;
    // Register page handler to validate users
    // This isn't an action because security is handled by the validation codes.
    register_page_handler('uservalidationbyemail', 'uservalidationbyemail_page_handler');
    // Register hook listening to new users.
    register_elgg_event_handler('validate', 'user', 'uservalidationbyemail_email_validation');
}
Example #16
0
/**
 * Profile init function; sets up the profile functions
 *
 */
function profile_init()
{
    // Get config
    global $CONFIG;
    // Register a URL handler for users - this means that profile_url()
    // will dictate the URL for all ElggUser objects
    register_entity_url_handler('profile_url', 'user', 'all');
    // Metadata on users needs to be independent
    register_metadata_as_independent('user');
    elgg_view_register_simplecache('icon/user/default/tiny');
    elgg_view_register_simplecache('icon/user/default/topbar');
    elgg_view_register_simplecache('icon/user/default/small');
    elgg_view_register_simplecache('icon/user/default/medium');
    elgg_view_register_simplecache('icon/user/default/large');
    elgg_view_register_simplecache('icon/user/default/master');
    // For now, we'll hard code the profile items as follows:
    // TODO make this user configurable
    /*$CONFIG->profile = array(
    		
    			// Language short codes must be of the form "profile:key"
    			// where key is the array key below
    			'description' => 'longtext',
    			'briefdescription' => 'text',
    			'location' => 'tags',
    			'interests' => 'tags',
    			'skills' => 'tags',
    			'contactemail' => 'email',
    			'phone' => 'text',
    			'mobile' => 'text',
    			'website' => 'url',
    							   
    		);*/
    // Register a page handler, so we can have nice URLs
    register_page_handler('profile', 'profile_page_handler');
    register_page_handler('defaultprofile', 'profileedit_page_handler');
    register_page_handler('icon', 'profile_icon_handler');
    register_page_handler('iconjs', 'profile_iconjs_handler');
    // Add Javascript reference to the page header
    extend_view('metatags', 'profile/metatags');
    extend_view('css', 'profile/css');
    extend_view('js/initialise_elgg', 'profile/javascript');
    if (get_context() == "profile") {
        extend_view('canvas_header/submenu', 'profile/submenu');
    }
    //add submenu options
    if (get_context() == "profile") {
        add_submenu_item(elgg_echo('profile:editdetails'), $CONFIG->wwwroot . "mod/profile/edit.php");
        add_submenu_item(elgg_echo('profile:editicon'), $CONFIG->wwwroot . "mod/profile/editicon.php");
    }
    // Extend context menu with admin links
    if (isadminloggedin()) {
        extend_view('profile/menu/links', 'profile/menu/adminwrapper', 10000);
    }
    // Now override icons
    register_plugin_hook('entity:icon:url', 'user', 'profile_usericon_hook');
}
/**
 * Elgg Sitemap plugin
 * 
 * @package
 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
 * @author Matthias Sutter email@matthias-sutter.de
 * @copyright CubeYoo.de
 * @link http://cubeyoo.de
 */
function sitemap_init()
{
    global $CONFIG;
    // Extend footer
    extend_view("footer/links", "sitemap/footer");
    extend_view('css', 'sitemap/css');
    // Register page handler and translations
    register_page_handler('sitemap', 'sitemap_page_handler');
    register_translations($CONFIG->pluginspath . "sitemap/languages/");
}
function everybody_init()
{
    global $CONFIG;
    // Set up menu for logged in users
    register_translations($CONFIG->pluginspath . "everybody/languages/");
    if (isloggedin()) {
        add_menu(elgg_echo('everybody'), $CONFIG->wwwroot . "pg/everybody");
    }
    register_page_handler('everybody', 'everybody_page_handler');
}
Example #19
0
/**
 * Init function
 *
 */
function embed_init()
{
    // Extend useful views with stuff we need for our embed modal
    extend_view('css', 'embed/css');
    // extend_view('js/initialise_elgg','embed/js');
    extend_view('metatags', 'embed/metatags');
    extend_view('input/longtext', 'embed/link', 10);
    // Page handler for the modal media embed
    register_page_handler('embed', 'embed_page_handler');
}
Example #20
0
/**
 * MessageBoard initialisation
 *
 * These parameters are required for the event API, but we won't use them:
 * 
 * @param unknown_type $event
 * @param unknown_type $object_type
 * @param unknown_type $object
 */
function messageboard_init()
{
    // Load system configuration
    global $CONFIG;
    // Extend system CSS with our own styles, which are defined in the messageboard/css view
    extend_view('css', 'messageboard/css');
    // Register a page handler, so we can have nice URLs
    register_page_handler('messageboard', 'messageboard_page_handler');
    // add a messageboard widget
    add_widget_type('messageboard', "" . elgg_echo("messageboard:board") . "", "" . elgg_echo("messageboard:desc") . ".", "profile");
}
/**
 * Initialise the log browser and set up the menus.
 *
 */
function logbrowser_init()
{
    global $CONFIG;
    // Register a page handler, so we can have nice URLs
    register_page_handler('logbrowser', 'logbrowser_page_handler');
    // Extend CSS
    elgg_extend_view('css', 'logbrowser/css');
    // Extend context menu with admin logbrowsre link
    if (isadminloggedin()) {
        elgg_extend_view('profile/menu/adminlinks', 'logbrowser/adminlinks', 10000);
    }
}
Example #22
0
/**
 * Elgg Simple editing of external pages frontpage/about/term/contact and privacy
 * 
 * @package ElggExPages
 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
 * @author Curverider Ltd
 * @copyright Curverider Ltd 2008-2010
 * @link http://elgg.com/
 */
function expages_init()
{
    global $CONFIG;
    // Register a page handler, so we can have nice URLs
    register_page_handler('expages', 'expages_page_handler');
    // Register a URL handler for external pages
    register_entity_url_handler('expages_url', 'object', 'expages');
    // extend views
    elgg_extend_view('footer/links', 'expages/footer_menu');
    // Extend CSS
    elgg_extend_view('css', 'expages/css');
}
/**
 * Elgg Simple editing of external pages frontpage/about/term/contact and privacy
 * 
 * @package ElggExPages
 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
 * @author Curverider Ltd
 * @copyright Curverider Ltd 2008-2009
 * @link http://elgg.com/
 */
function expages_init()
{
    global $CONFIG;
    // Register a page handler, so we can have nice URLs
    register_page_handler('expages', 'expages_page_handler');
    // Register a URL handler for external pages
    register_entity_url_handler('expages_url', 'object', 'expages');
    // extend views
    extend_view('footer/links', 'expages/footer_menu');
    extend_view('index/righthandside', 'expages/front_right');
    extend_view('index/lefthandside', 'expages/front_left');
}
Example #24
0
/**
 * Initialise the Reported content and set up the menus.
 *
 */
function reportedcontent_init()
{
    global $CONFIG;
    // Register a page handler, so we can have nice URLs
    register_page_handler('reportedcontent', 'reportedcontent_page_handler');
    // Extend CSS
    extend_view('css', 'reportedcontent/css');
    // Extend context menu with reported content link
    if (isloggedin()) {
        extend_view('profile/menu/links', 'reportedcontent/user_report');
    }
}
function friends_of_friends_init()
{
    global $CONFIG;
    // Register a page handler, so we can have nice URLs
    register_page_handler('friendsoffriends', 'friends_of_friends_page_handler');
    // Extend CSS
    extend_view('css', 'friends_of_friends/css');
    //Read Settings
    $CONFIG->mod->friends_of_friends->config->hidefriendsof = get_plugin_setting('hidefriendsof', 'friends_of_friends');
    register_action("friends_of_friends/get_text", false, $CONFIG->pluginspath . "friends_of_friends/actions/get_text.php", true);
    register_action("friends_of_friends/translate", false, $CONFIG->pluginspath . "friends_of_friends/actions/translate.php", true);
}
/**
 * Initialise the diagnostics tool
 *
 */
function diagnostics_init()
{
    global $CONFIG;
    // Register a page handler, so we can have nice URLs
    register_page_handler('diagnostics', 'diagnostics_page_handler');
    // Register some actions
    register_action("diagnostics/download", false, $CONFIG->pluginspath . "diagnostics/actions/download.php");
    // If debug on then enable an example test
    if (isset($CONFIG->debug) && $CONFIG->debug) {
        register_elgg_test(elgg_echo('diagnostics:unittest:example'), 'diagnostics_test_test');
    }
}
Example #27
0
function text_import_init()
{
    global $CONFIG;
    include_once dirname(__FILE__) . "/lib/functions.php";
    include_once dirname(__FILE__) . "/lib/hooks.php";
    elgg_extend_view("css", "text_import/css");
    elgg_extend_view("css", "fancybox/css");
    elgg_extend_view("js/initialise_elgg", "text_import/js");
    elgg_extend_view("metatags", "text_import/metatags");
    elgg_extend_view('input/longtext', 'import/text', 1);
    register_page_handler("text_import", "text_import_page_handler");
}
Example #28
0
/**
 * Initialise the dgroups plugin.
 * Register actions, set up menus
 */
function dgroups_init()
{
    global $CONFIG;
    // Set up the menu for logged in users
    if (isloggedin()) {
        add_menu(elgg_echo('dgroups'), $CONFIG->wwwroot . "pg/dgroups/world/");
        //add_menu(elgg_echo('dgroups:alldiscussion'),$CONFIG->wwwroot."mod/dgroups/discussions.php");
    } else {
        add_menu(elgg_echo('dgroups'), $CONFIG->wwwroot . "pg/dgroups/world/");
    }
    // Register a page handler, so we can have nice URLs
    register_page_handler('dgroups', 'dgroups_page_handler');
    // Register a URL handler for dgroups and forum topics
    register_entity_url_handler('dgroups_url', 'group', 'dgroup');
    register_entity_url_handler('dgroups_dgroupforumtopic_url', 'object', 'dgroupforumtopic');
    // Register an icon handler for dgroups
    register_page_handler('dgroupicon', 'dgroups_icon_handler');
    // Register some actions
    register_action("dgroups/edit", false, $CONFIG->pluginspath . "dgroups/actions/edit.php");
    register_action("dgroups/delete", false, $CONFIG->pluginspath . "dgroups/actions/delete.php");
    register_action("dgroups/join", false, $CONFIG->pluginspath . "dgroups/actions/join.php");
    register_action("dgroups/leave", false, $CONFIG->pluginspath . "dgroups/actions/leave.php");
    register_action("dgroups/joinrequest", false, $CONFIG->pluginspath . "dgroups/actions/joinrequest.php");
    register_action("dgroups/killrequest", false, $CONFIG->pluginspath . "dgroups/actions/dgroupskillrequest.php");
    register_action("dgroups/addtodgroup", false, $CONFIG->pluginspath . "dgroups/actions/addtodgroup.php");
    register_action("dgroups/invite", false, $CONFIG->pluginspath . "dgroups/actions/invite.php");
    extend_view('dgroups/menu/links', 'pages/menu');
    // Add to groups context
    extend_view('dgroups/right_column', 'pages/groupprofile_pages');
    // Add to groups context
    // Use dgroup widgets
    use_widgets('dgroups');
    // Add a page owner handler
    add_page_owner_handler('dgroups_page_owner_handler');
    // Add some widgets
    add_widget_type('a_users_dgroups', elgg_echo('dgroups:widget:membership'), elgg_echo('dgroups:widgets:description'));
    //extend some views
    extend_view('profile/icon', 'dgroups/icon');
    extend_view('css', 'dgroups/css');
    // Write access permissions
    register_plugin_hook('access:collections:write', 'all', 'dgroups_write_acl_plugin_hook');
    // Notification hooks
    if (is_callable('register_notification_object')) {
        register_notification_object('object', 'dgroupforumtopic', elgg_echo('dgroupforumtopic:new'));
    }
    register_plugin_hook('object:notifications', 'object', 'dgroup_object_notifications_intercept');
    // Listen to notification events and supply a more useful message
    register_plugin_hook('notify:entity:message', 'object', 'dgroupforumtopic_notify_message');
    // add the forum tool option
    // Now override icons
    register_plugin_hook('entity:icon:url', 'group', 'dgroups_dgroupicon_hook');
}
Example #29
0
/**
 * Default widgets initialisation
 *
 * These parameters are required for the event API, but we won't use them:
 * 
 * @param unknown_type $event
 * @param unknown_type $object_type
 * @param unknown_type $object
 */
function defaultwidgets_init()
{
    // Load system configuration
    register_page_handler('defaultwidgets', 'defaultwidgets_page_handler');
    // register create user event hook
    register_elgg_event_handler('create', 'user', 'defaultwidgets_newusers');
    // set the widget access to the default access on validation if this is not an admin-created user
    if (!isadminloggedin()) {
        register_elgg_event_handler('validate', 'user', 'defaultwidgets_reset_access');
    }
    // Override metadata permissions
    //register_plugin_hook ( 'permissions_check:metadata', 'object', 'defaultwidgets_can_edit_metadata' );
}
Example #30
0
/**
 * Elgg river dashboard plugin
 */
function riverdashboard_init()
{
    global $CONFIG;
    // Register and optionally replace the dashboard
    if (get_plugin_setting('useasdashboard', 'riverdashboard') == 'yes') {
        register_page_handler('dashboard', 'riverdashboard_page_handler');
    } else {
        // Activity main menu
        add_menu(elgg_echo('activity'), $CONFIG->wwwroot . "mod/riverdashboard/");
    }
    // Page handler
    register_page_handler('riverdashboard', 'riverdashboard_page_handler');
    elgg_extend_view('css', 'riverdashboard/css');
}