Ejemplo n.º 1
0
Archivo: start.php Proyecto: rasul/Elgg
/**
 * Initialize the pages plugin.
 *
 */
function pages_init()
{
    // register a library of helper functions
    elgg_register_library('elgg:pages', elgg_get_plugins_path() . 'pages/lib/pages.php');
    $item = new ElggMenuItem('pages', elgg_echo('pages'), 'pages/all');
    elgg_register_menu_item('site', $item);
    // Register a page handler, so we can have nice URLs
    elgg_register_page_handler('pages', 'pages_page_handler');
    // Register a url handler
    elgg_register_entity_url_handler('object', 'page_top', 'pages_url');
    elgg_register_entity_url_handler('object', 'page', 'pages_url');
    register_extender_url_handler('pages_revision_url', 'annotation', 'page');
    // Register some actions
    $action_base = elgg_get_plugins_path() . 'pages/actions/pages';
    elgg_register_action("pages/edit", "{$action_base}/edit.php");
    elgg_register_action("pages/editwelcome", "{$action_base}/editwelcome.php");
    elgg_register_action("pages/delete", "{$action_base}/delete.php");
    // Extend the main css view
    elgg_extend_view('css/elgg', 'pages/css');
    // Register javascript needed for sidebar menu
    $js_url = 'mod/pages/vendors/jquery-treeview/jquery.treeview.min.js';
    elgg_register_js('jquery-treeview', $js_url);
    $css_url = 'mod/pages/vendors/jquery-treeview/jquery.treeview.css';
    elgg_register_css('jquery-treeview', $css_url);
    // Register entity type for search
    elgg_register_entity_type('object', 'page');
    elgg_register_entity_type('object', 'page_top');
    // Register granular notification for this type
    register_notification_object('object', 'page', elgg_echo('pages:new'));
    register_notification_object('object', 'page_top', elgg_echo('pages:new'));
    elgg_register_plugin_hook_handler('notify:entity:message', 'object', 'page_notify_message');
    // add to groups
    add_group_tool_option('pages', elgg_echo('groups:enablepages'), true);
    elgg_extend_view('groups/tool_latest', 'pages/group_module');
    //add a widget
    elgg_register_widget_type('pages', elgg_echo('pages'), elgg_echo('pages:widget:description'));
    // Language short codes must be of the form "pages:key"
    // where key is the array key below
    elgg_set_config('pages', array('title' => 'text', 'description' => 'longtext', 'tags' => 'tags', 'access_id' => 'access', 'write_access_id' => 'access'));
    elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'pages_owner_block_menu');
    // write permission plugin hooks
    elgg_register_plugin_hook_handler('permissions_check', 'object', 'pages_write_permission_check');
    elgg_register_plugin_hook_handler('container_permissions_check', 'object', 'pages_container_permission_check');
    // icon url override
    elgg_register_plugin_hook_handler('entity:icon:url', 'object', 'pages_icon_url_override');
    // entity menu
    elgg_register_plugin_hook_handler('register', 'menu:entity', 'pages_entity_menu_setup');
    // register ecml views to parse
    elgg_register_plugin_hook_handler('get_views', 'ecml', 'pages_ecml_views_hook');
}
Ejemplo n.º 2
0
/**
 * Register an annotation url handler.
 *
 * @param string $function_name The function.
 * @param string $extender_name The name, default 'all'.
 */
function register_annotation_url_handler($function_name, $extender_name = "all")
{
    return register_extender_url_handler($function_name, 'annotation', $extender_name);
}
 */
function groups_get_invited_groups($user_guid, $return_guids = FALSE)
{
    $ia = elgg_set_ignore_access(TRUE);
    $invitations = elgg_get_entities_from_relationship(array('relationship' => 'invited', 'relationship_guid' => $user_guid, 'inverse_relationship' => TRUE, 'limit' => 9999));
    elgg_set_ignore_access($ia);
    if ($return_guids) {
        $guids = array();
        foreach ($invitations as $invitation) {
            $guids[] = $invitation->getGUID();
        }
        return $guids;
    }
    return $invitations;
}
register_extender_url_handler('group_topicpost_url', 'annotation', 'group_topic_post');
// Register a handler for create groups
register_elgg_event_handler('create', 'group', 'groups_create_event_listener');
// Register a handler for delete groups
register_elgg_event_handler('delete', 'group', 'groups_delete_event_listener');
// Make sure the groups initialisation function is called on initialisation
register_elgg_event_handler('init', 'system', 'groups_init');
register_elgg_event_handler('init', 'system', 'groups_fields_setup', 10000);
// Ensure this runs after other plugins
register_elgg_event_handler('join', 'group', 'groups_user_join_event_listener');
register_elgg_event_handler('leave', 'group', 'groups_user_leave_event_listener');
register_elgg_event_handler('pagesetup', 'system', 'groups_submenus');
register_elgg_event_handler('annotate', 'all', 'group_object_notifications');
// Register actions
global $CONFIG;
register_action("groups/addtopic", false, $CONFIG->pluginspath . "groups/actions/forums/addtopic.php");
Ejemplo n.º 4
0
/**
 * Register a metadata url handler.
 *
 * @param string $function_name The function.
 * @param string $extender_name The name, default 'all'.
 */
function register_metadata_url_handler($function_name, $extender_name = "all")
{
    return register_extender_url_handler($function_name, 'metadata', $extender_name);
}