Пример #1
0
/**
 * 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');
}
Пример #2
0
function uservalidationbyemail_init()
{
    require_once dirname(__FILE__) . '/lib/functions.php';
    // Register page handler to validate users
    // This doesn't need to be an action because security is handled by the validation codes.
    elgg_register_page_handler('uservalidationbyemail', 'uservalidationbyemail_page_handler');
    // mark users as unvalidated and disable when they register
    elgg_register_plugin_hook_handler('register', 'user', 'uservalidationbyemail_disable_new_user');
    // forward to uservalidationbyemail/emailsent page after register
    elgg_register_plugin_hook_handler('forward', 'system', 'uservalidationbyemail_after_registration_url');
    // canEdit override to allow not logged in code to disable a user
    elgg_register_plugin_hook_handler('permissions_check', 'user', 'uservalidationbyemail_allow_new_user_can_edit');
    // prevent users from logging in if they aren't validated
    register_pam_handler('uservalidationbyemail_check_auth_attempt', "required");
    // when requesting a new password
    elgg_register_plugin_hook_handler('action', 'user/requestnewpassword', 'uservalidationbyemail_check_request_password');
    // prevent the engine from logging in users via login()
    elgg_register_event_handler('login:before', 'user', 'uservalidationbyemail_check_manual_login');
    // make admin users always validated
    elgg_register_event_handler('make_admin', 'user', 'uservalidationbyemail_validate_new_admin_user');
    // register Walled Garden public pages
    elgg_register_plugin_hook_handler('public_pages', 'walled_garden', 'uservalidationbyemail_public_pages');
    // admin interface to manually validate users
    elgg_register_admin_menu_item('administer', 'unvalidated', 'users');
    elgg_extend_view('admin.css', 'uservalidationbyemail/css');
    elgg_extend_view('elgg.js', 'uservalidationbyemail/js');
    $action_path = dirname(__FILE__) . '/actions';
    elgg_register_action('uservalidationbyemail/validate', "{$action_path}/validate.php", 'admin');
    elgg_register_action('uservalidationbyemail/resend_validation', "{$action_path}/resend_validation.php", 'admin');
    elgg_register_action('uservalidationbyemail/delete', "{$action_path}/delete.php", 'admin');
    elgg_register_action('uservalidationbyemail/bulk_action', "{$action_path}/bulk_action.php", 'admin');
}
Пример #3
0
function init()
{
    if (is_on_probation()) {
        // don't allow sending messages
        elgg_unregister_action('messages/send');
        elgg_register_plugin_hook_handler('register', 'menu:topbar', __NAMESPACE__ . '\\hook_register_menu_topbar', 999);
        // don't allow group creation
        elgg_unregister_action('groups/edit');
        elgg_register_plugin_hook_handler('register', 'menu:title', __NAMESPACE__ . '\\hook_register_title_menu', 999);
        // mark content as probationary and make it private.
        if (elgg_get_plugin_setting(QUARANTINE_CONTENT, PLUGIN_ID)) {
            elgg_register_event_handler('create', 'object', __NAMESPACE__ . '\\event_create_object');
            elgg_register_event_handler('update', 'object', __NAMESPACE__ . '\\event_update_object');
        }
    }
    if (elgg_is_admin_logged_in()) {
        elgg_register_admin_menu_item('administer', 'probation', 'users');
        // Add approval links to entity menus
        elgg_register_plugin_hook_handler('prepare', 'menu:entity', __NAMESPACE__ . '\\hook_prepare_entity_menu', 999);
    }
    // show message above user profile
    elgg_extend_view('profile/details', 'probation/profile_details_400', 400);
    elgg_register_action('probation/approve_content', __DIR__ . '/actions/probation/approve_content.php', 'admin');
    elgg_register_action('probation/approve_user', __DIR__ . '/actions/probation/approve_user.php', 'admin');
    // hiding "Send message" or adding "Remove probation"
    elgg_register_plugin_hook_handler('register', 'menu:user_hover', __NAMESPACE__ . '\\hook_register_hover_menu', 999);
    // put all newly-enabled users on probation
    elgg_register_event_handler('enable', 'user', __NAMESPACE__ . '\\event_enable_user');
    // we don't enqueue notification events for probationary content
    elgg_register_plugin_hook_handler('enqueue', 'notification', __NAMESPACE__ . '\\hook_enqueue_notification');
    // nor do we allow notify_user() for comments/replies
    elgg_register_plugin_hook_handler('email', 'system', __NAMESPACE__ . '\\hook_email_system', 1);
    elgg_register_event_handler('shutdown', 'system', __NAMESPACE__ . '\\event_shutdown');
}
Пример #4
0
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");
}
Пример #5
0
/**
 * 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');
}
Пример #6
0
function twitter_api_init()
{
    // require libraries
    $base = elgg_get_plugins_path() . 'twitter_api';
    elgg_register_class('TwitterOAuth', "{$base}/vendors/twitteroauth/twitterOAuth.php");
    elgg_register_library('twitter_api', "{$base}/lib/twitter_api.php");
    elgg_load_library('twitter_api');
    // extend site views
    //elgg_extend_view('metatags', 'twitter_api/metatags');
    elgg_extend_view('css/elgg', 'twitter_api/css');
    elgg_extend_view('css/admin', 'twitter_api/css');
    // sign on with twitter
    if (twitter_api_allow_sign_on_with_twitter()) {
        elgg_extend_view('login/extend', 'twitter_api/login');
    }
    // register page handler
    elgg_register_page_handler('twitter_api', 'twitter_api_pagehandler');
    // backward compatibility
    elgg_register_page_handler('twitterservice', 'twitter_api_pagehandler_deprecated');
    // register Walled Garden public pages
    elgg_register_plugin_hook_handler('public_pages', 'walled_garden', 'twitter_api_public_pages');
    // push status messages to twitter
    elgg_register_plugin_hook_handler('status', 'user', 'twitter_api_tweet');
    $actions = dirname(__FILE__) . '/actions/twitter_api';
    elgg_register_action('twitter_api/interstitial_settings', "{$actions}/interstitial_settings.php", 'logged_in');
}
Пример #7
0
/**
 * Initialize the plugin
 *
 * @return void
 */
function notifier_init()
{
    notifier_set_view_listener();
    // Add hidden popup module to topbar
    elgg_extend_view('page/elements/topbar', 'notifier/popup');
    elgg_require_js('notifier/notifier');
    elgg_register_page_handler('notifier', 'notifier_page_handler');
    // Add css
    elgg_extend_view('elgg.css', 'notifier/notifier.css');
    elgg_register_notification_method('notifier');
    elgg_register_plugin_hook_handler('send', 'notification:notifier', 'notifier_notification_send');
    elgg_register_plugin_hook_handler('route', 'friendsof', 'notifier_read_friends_notification');
    elgg_register_event_handler('create', 'relationship', 'notifier_relationship_notifications');
    elgg_register_event_handler('delete', 'relationship', 'notifier_read_group_invitation_notification');
    // Hook handler for cron that removes old messages
    elgg_register_plugin_hook_handler('cron', 'daily', 'notifier_cron');
    elgg_register_plugin_hook_handler('register', 'menu:topbar', 'notifier_topbar_menu_setup');
    elgg_register_event_handler('create', 'user', 'notifier_enable_for_new_user');
    elgg_register_event_handler('join', 'group', 'notifier_enable_for_new_group_member');
    $action_path = elgg_get_plugins_path() . 'notifier/actions/notifier/';
    elgg_register_action('notifier/dismiss', $action_path . 'dismiss.php');
    elgg_register_action('notifier/dismiss_one', $action_path . 'dismiss_one.php');
    elgg_register_action('notifier/clear', $action_path . 'clear.php');
    elgg_register_action('notifier/delete', $action_path . 'delete.php');
}
Пример #8
0
/**
 * 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");
}
Пример #9
0
function actionsRegister()
{
    elgg_register_action('turmas/save', elgg_get_plugins_path() . 'logos-treinamento/actions/save-turma.php');
    elgg_register_action('alunos/save', elgg_get_plugins_path() . 'logos-treinamento/actions/save-aluno.php');
    elgg_register_action('atividades/save', elgg_get_plugins_path() . 'logos-treinamento/actions/save-atividade.php');
    elgg_register_action('resposta/save', elgg_get_plugins_path() . 'logos-treinamento/actions/save-resposta.php');
}
Пример #10
0
function gnusocial_api_init()
{
    // require libraries
    $base = elgg_get_plugins_path() . 'gnusocial_api';
    elgg_register_class('GNUSocialOAuth', "{$base}/vendors/gnusocialoauth/gnusocialOAuth.php");
    elgg_register_library('gnusocial_api', "{$base}/lib/gnusocial_api.php");
    elgg_load_library('gnusocial_api');
    // extend site views
    //elgg_extend_view('metatags', 'gnusocial_api/metatags');
    elgg_extend_view('css/elgg', 'gnusocial_api/css');
    elgg_extend_view('css/admin', 'gnusocial_api/css');
    elgg_extend_view('js/elgg', 'gnusocial_api/js');
    // sign on with gnusocial
    if (gnusocial_api_allow_sign_on_with_gnusocial()) {
        elgg_extend_view('login/extend', 'gnusocial_api/login');
    }
    // register page handler
    elgg_register_page_handler('gnusocial_api', 'gnusocial_api_pagehandler');
    // backward compatibility
    elgg_register_page_handler('gnusocialservice', 'gnusocial_api_pagehandler_deprecated');
    // register Walled Garden public pages
    elgg_register_plugin_hook_handler('public_pages', 'walled_garden', 'gnusocial_api_public_pages');
    // push wire post messages to gnusocial
    if (elgg_get_plugin_setting('wire_posts', 'gnusocial_api') == 'yes') {
        elgg_register_plugin_hook_handler('status', 'user', 'gnusocial_api_tweet');
    }
    $actions = dirname(__FILE__) . '/actions/gnusocial_api';
    elgg_register_action('gnusocial_api/interstitial_settings', "{$actions}/interstitial_settings.php", 'logged_in');
}
Пример #11
0
function http_blacklist_init()
{
    if (!elgg_is_logged_in() && elgg_get_plugin_setting("httpblkey", "http_blacklist")) {
        elgg_register_plugin_hook_handler('route', 'all', 'http_blacklist_router');
    }
    elgg_register_action('http_blacklist/reset', elgg_get_plugins_path() . 'http_blacklist/actions/http_blacklist/reset.php', 'admin');
}
Пример #12
0
function follow_tags_init()
{
    //Register Save Action for saving and changing FollowTags
    elgg_register_action("follow_tags/save", dirname(__FILE__) . '/action/save.php');
    //Register a River Tab
    if (elgg_is_logged_in()) {
        $user = elgg_get_logged_in_user_entity();
        elgg_register_menu_item('filter', array('name' => 'tags', 'href' => "/activity/tags", 'text' => elgg_echo("follow_tags:tab:title"), 'priority' => 500, 'contexts' => array('activity')));
        //Register a Sidebar Item for Usersettings
        elgg_register_menu_item('page', array('name' => "follow_tags", 'text' => elgg_echo("follow_tags:sidebar:title"), 'href' => "follow_tags/settings/" . $user->username, 'context' => "settings"));
    }
    elgg_register_plugin_hook_handler("route", "activity", "follow_tags_route_activity_hook");
    //Register Pagehandlers
    elgg_register_page_handler('follow_tags', 'follow_tags_page_handler');
    elgg_register_page_handler('follow_tags_data', 'follow_tags_data_page_handler');
    //Register JS and CSS for custom taginput field
    $js_url = 'mod/follow_tags/vendors/jquery.tagsinput.min.js';
    elgg_register_js('jquery.tagsinput', $js_url, 'footer');
    // Register CSS for TagInput
    $css_url = 'mod/follow_tags/vendors/jquery.tagsinput.css';
    elgg_register_css('jquery.tagsinput', $css_url);
    // extend tags to include js/css just in time
    elgg_extend_view("input/tags", "follow_tags/extends/tags");
    // Add a JavaScript Initialization
    elgg_extend_view('js/elgg', 'js/follow_tags/site');
    // Run the followtags_notofy function in event is triggerd
    elgg_register_event_handler('create', 'object', 'follow_tags_notify', 501);
}
Пример #13
0
/**
 * Initialize the GV groups plugin.
 */
function gvgroups_init()
{
    // override the groups library
    elgg_register_library('elgg:groups', elgg_get_plugins_path() . "gvgroups/lib/groups.php");
    elgg_register_library('elgg:discussion', elgg_get_plugins_path() . 'gvgroups/lib/discussion.php');
    // add admin menu
    elgg_register_admin_menu_item('administer', 'createlocal', 'groups');
    elgg_register_admin_menu_item('administer', 'deletelocal', 'groups');
    // unregister the sidebar menu (my groups, group that I own, ...)
    elgg_unregister_event_handler('pagesetup', 'system', 'groups_setup_sidebar_menus');
    // add some page handler
    elgg_register_plugin_hook_handler("route", "groups", "gvgroups_route_groups_handler");
    elgg_register_plugin_hook_handler("route", "discussion", "gvgroups_route_discussion_handler");
    // override some actions
    $action_base = elgg_get_plugins_path() . 'gvgroups/actions';
    elgg_register_action("gvgroups/edit", "{$action_base}/gvgroups/edit.php");
    // register some new actions
    elgg_register_action("admin/createlocal", "{$action_base}/admin/createlocal.php");
    elgg_register_action("admin/deletelocal", "{$action_base}/admin/deletelocal.php");
    // add a hook to transform group menu item in a dropdown menu
    elgg_register_plugin_hook_handler('register', 'menu:site', 'gvgroups_custom_sitemenu_setup');
    // add an event handler to add the user in local groups, according to his profile
    elgg_register_event_handler('profileupdate', 'user', 'gvgroups_profileupdate');
    // manage some specific subscribing (town groups)
    elgg_register_event_handler('create', 'member', 'gvgroups_join_group');
    // add "my groups" menu to the topbar
    elgg_register_menu_item('topbar', array('name' => 'mygroups', 'href' => "groups/member/{$user->username}", 'text' => elgg_echo('gvgroups:mygroups'), 'section' => 'alt'));
    // extend CSS view
    elgg_extend_view('css/elgg', 'gvgroups/css');
    elgg_register_plugin_hook_handler('register', 'menu:entity', 'gvgroups_entity_menu_setup');
    // check groups subscription at login
    elgg_register_event_handler('login', 'user', 'gvgroups_profileupdate');
}
Пример #14
0
function digest_init()
{
    // extend css
    elgg_extend_view("css/elgg", "css/digest/site");
    elgg_extend_view("css/admin", "css/digest/admin");
    // register page handler for nice url's
    elgg_register_page_handler("digest", "digest_page_handler");
    // extend register with subscribe option
    elgg_extend_view("register/extend", "digest/register");
    // extend groups edit screen
    elgg_extend_view("groups/edit", "digest/groupsettings/form", 400);
    // register plugin hooks
    elgg_register_plugin_hook_handler("register", "user", "digest_register_user_hook");
    elgg_register_plugin_hook_handler("cron", "daily", "digest_cron_handler");
    elgg_register_plugin_hook_handler("public_pages", "walled_garden", "digest_walled_garden_hook");
    // register events
    elgg_register_event_handler("leave", "group", "digest_group_leave_event");
    // register actions
    elgg_register_action("digest/settings/save", dirname(__FILE__) . "/actions/settings/save.php", "admin");
    elgg_register_action("digest/reset_stats", dirname(__FILE__) . "/actions/reset_stats.php", "admin");
    elgg_register_action("digest/update/usersettings", dirname(__FILE__) . "/actions/update/usersettings.php");
    elgg_register_action("digest/update/groupsettings", dirname(__FILE__) . "/actions/update/groupsettings.php");
    // register html converter library
    elgg_register_library("emogrifier", dirname(__FILE__) . "/vendors/emogrifier/emogrifier.php");
}
Пример #15
0
function messages_init()
{
    // register a library of helper functions
    elgg_register_library('elgg:messages', elgg_get_plugins_path() . 'messages/lib/messages.php');
    // add page menu items
    if (elgg_is_logged_in()) {
        elgg_register_menu_item('page', array('name' => 'messages:inbox', 'text' => elgg_echo('messages:inbox'), 'href' => "messages/inbox/" . elgg_get_logged_in_user_entity()->username, 'context' => 'messages'));
        elgg_register_menu_item('page', array('name' => 'messages:sentmessages', 'text' => elgg_echo('messages:sentmessages'), 'href' => "messages/sent/" . elgg_get_logged_in_user_entity()->username, 'context' => 'messages'));
    }
    elgg_register_event_handler('pagesetup', 'system', 'messages_notifier');
    // Extend system CSS with our own styles, which are defined in the messages/css view
    elgg_extend_view('css/elgg', 'messages/css');
    elgg_extend_view('js/elgg', 'messages/js');
    // Register a page handler, so we can have nice URLs
    elgg_register_page_handler('messages', 'messages_page_handler');
    // Register a URL handler
    elgg_register_entity_url_handler('object', 'messages', 'messages_url');
    // Extend avatar hover menu
    elgg_register_plugin_hook_handler('register', 'menu:user_hover', 'messages_user_hover_menu');
    // Register a notification handler for site messages
    register_notification_handler("site", "messages_site_notify_handler");
    elgg_register_plugin_hook_handler('notify:entity:message', 'object', 'messages_notification_msg');
    register_notification_object('object', 'messages', elgg_echo('messages:new'));
    // ecml
    elgg_register_plugin_hook_handler('get_views', 'ecml', 'messages_ecml_views_hook');
    // permission overrides
    elgg_register_plugin_hook_handler('permissions_check:metadata', 'object', 'messages_can_edit_metadata');
    elgg_register_plugin_hook_handler('permissions_check', 'object', 'messages_can_edit');
    elgg_register_plugin_hook_handler('container_permissions_check', 'object', 'messages_can_edit_container');
    // Register actions
    $action_path = elgg_get_plugins_path() . 'messages/actions/messages';
    elgg_register_action("messages/send", "{$action_path}/send.php");
    elgg_register_action("messages/delete", "{$action_path}/delete.php");
    elgg_register_action("messages/process", "{$action_path}/process.php");
}
Пример #16
0
/**
 * 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');
}
Пример #17
0
function messages_init()
{
    // register a library of helper functions
    elgg_register_library('elgg:messages', __DIR__ . '/lib/messages.php');
    // add page menu items
    if (elgg_is_logged_in()) {
        elgg_register_menu_item('page', array('name' => 'messages:inbox', 'text' => elgg_echo('messages:inbox'), 'href' => "messages/inbox/" . elgg_get_logged_in_user_entity()->username, 'context' => 'messages'));
        elgg_register_menu_item('page', array('name' => 'messages:sentmessages', 'text' => elgg_echo('messages:sentmessages'), 'href' => "messages/sent/" . elgg_get_logged_in_user_entity()->username, 'context' => 'messages'));
    }
    // Extend system CSS with our own styles, which are defined in the messages/css view
    elgg_extend_view('elgg.css', 'messages/css');
    elgg_extend_view('elgg.js', 'messages/js');
    // Register a page handler, so we can have nice URLs
    elgg_register_page_handler('messages', 'messages_page_handler');
    // Register a URL handler
    elgg_register_plugin_hook_handler('entity:url', 'object', 'messages_set_url');
    // Extend avatar hover menu
    elgg_register_plugin_hook_handler('register', 'menu:user_hover', 'messages_user_hover_menu');
    // delete messages sent by a user when user is deleted
    elgg_register_event_handler('delete', 'user', 'messages_purge');
    // ecml
    elgg_register_plugin_hook_handler('get_views', 'ecml', 'messages_ecml_views_hook');
    // permission overrides
    elgg_register_plugin_hook_handler('permissions_check:metadata', 'object', 'messages_can_edit_metadata');
    elgg_register_plugin_hook_handler('permissions_check', 'object', 'messages_can_edit');
    elgg_register_plugin_hook_handler('container_permissions_check', 'object', 'messages_can_edit_container');
    // Register actions
    $action_path = __DIR__ . '/actions/messages';
    elgg_register_action("messages/send", "{$action_path}/send.php");
    elgg_register_action("messages/delete", "{$action_path}/delete.php");
    elgg_register_action("messages/process", "{$action_path}/process.php");
    // Topbar menu. We assume this menu will render *after* a message is rendered. If a refactor/plugin
    // causes it to render first, the unread count notification will not update until the next page.
    elgg_register_plugin_hook_handler('register', 'menu:topbar', 'messages_register_topbar');
}
Пример #18
0
/**
 * 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');
}
Пример #19
0
Файл: Plugin.php Проект: n8b/VMN
 /**
  * System init callback
  * @return void
  */
 public function init()
 {
     hypeInbox()->config->registerLabels();
     elgg_register_menu_item('page', array('name' => 'message_types', 'text' => elgg_echo('admin:inbox:message_types'), 'href' => 'admin/inbox/message_types', 'priority' => 500, 'contexts' => array('admin'), 'section' => 'configure'));
     elgg_register_css('inbox.base.css', elgg_get_simplecache_url('css', 'framework/inbox/stylesheet.css'));
     elgg_unregister_page_handler('messages', 'messages_page_handler');
     elgg_register_page_handler($this->config->pagehandler_id, array($this->router, 'handlePages'));
     $action_path = $this->plugin->getPath() . '/actions/';
     elgg_register_action("hypeInbox/settings/save", $action_path . 'settings/save.php', 'admin');
     elgg_register_action('inbox/admin/import', $action_path . 'admin/import.php', 'admin');
     elgg_register_action('messages/send', $action_path . 'messages/send.php');
     elgg_register_action('messages/delete', $action_path . 'messages/delete.php');
     elgg_register_action('messages/markread', $action_path . 'messages/markread.php');
     elgg_register_action('messages/markunread', $action_path . 'messages/markunread.php');
     // Third party integrations
     elgg_register_plugin_hook_handler('config:user_types', 'framework:inbox', array($this->hooks, 'filterUserTypes'));
     // Menu
     elgg_register_plugin_hook_handler('register', 'menu:page', array($this->hooks, 'setupPageMenu'));
     elgg_register_plugin_hook_handler('register', 'menu:inbox', array($this->hooks, 'setupInboxMenu'));
     elgg_register_plugin_hook_handler('register', 'menu:inbox:thread', array($this->hooks, 'setupInboxThreadMenu'));
     elgg_register_plugin_hook_handler('register', 'menu:entity', array($this->hooks, 'setupMessageMenu'));
     // Replace user hover menu items
     elgg_unregister_plugin_hook_handler('register', 'menu:user_hover', 'messages_user_hover_menu');
     elgg_register_plugin_hook_handler('register', 'menu:user_hover', array($this->hooks, 'setupUserHoverMenu'));
     // URLs
     elgg_register_plugin_hook_handler('entity:url', 'object', array($this->hooks, 'handleMessageURL'));
     elgg_register_plugin_hook_handler('entity:icon:url', 'object', array($this->hooks, 'handleMessageIconURL'));
 }
Пример #20
0
/**
 * Subgroups plugin initialization functions.
 */
function subgroups_init()
{
    // register a library of helper functions
    elgg_register_library('elgg:subgroups', elgg_get_plugins_path() . 'subgroups/lib/subgroups.php');
    // override groups library
    elgg_register_library('elgg:groups', elgg_get_plugins_path() . 'subgroups/lib/groups.php');
    // Register actions
    $actions_path = elgg_get_plugins_path() . 'subgroups/actions/subgroups';
    elgg_register_action("subgroups/add", $actions_path . "/add.php");
    elgg_register_action("subgroups/remove", $actions_path . "/remove.php");
    // Register page handler
    elgg_register_page_handler('subgroups', 'subgroups_page_handler');
    // Register pagesetup event handler
    elgg_register_event_handler('pagesetup', 'system', 'subgroups_setup_sidebar_menus');
    // Register unsetter container_guid handler
    elgg_register_event_handler('update', 'group', 'subgroups_unset_group_container');
    // Register an unrelate link to entity menu (max priority to run the last)
    elgg_register_plugin_hook_handler('register', 'menu:entity', 'subgroups_menu_setup', 9999);
    // Extend group fields
    elgg_register_plugin_hook_handler('profile:fields', 'group', 'subgroups_add_container_field');
    // Access permissions
    elgg_register_plugin_hook_handler('access:collections:write', 'all', 'subgroups_read_acl_plugin_hook');
    // Extending views
    elgg_extend_view('groups/sidebar/members', 'groups/sidebar/subgroups', 300);
    //TODO elgg_extend_view('groups/forum_latest', 'subgroups/frontpage');
    // Extending CSS
    elgg_extend_view('css/elements/components', 'groups/css/elements/components');
    elgg_register_ajax_view('subgroups/groups_i_can_edit');
    // Add group tool
    add_group_tool_option('subgroups', elgg_echo('subgroups:in_frontpage'), false);
    elgg_extend_view('groups/tool_latest', 'subgroups/group_module');
}
Пример #21
0
/**
 * Initialize the plugin.
 */
function tour_init()
{
    $js_lib = elgg_get_plugin_setting('js_library', 'tour');
    if ($js_lib == 'joyride') {
        elgg_register_css('joyride', '/mod/tour/vendors/joyride/joyride-2.1.css');
        elgg_load_css('joyride');
        elgg_define_js('joyride', array('src' => '/mod/tour/vendors/joyride/jquery.joyride-2.1.js', 'exports' => 'joyride'));
    } else {
        elgg_register_css('hopscotch', '/mod/tour/vendors/hopscotch/css/hopscotch.min.css');
        elgg_load_css('hopscotch');
        elgg_define_js('hopscotch', array('src' => '/mod/tour/vendors/hopscotch/hopscotch.min.js', 'exports' => 'hopscotch'));
    }
    elgg_require_js('elgg/tour/display');
    //elgg_require_js('elgg/tour/edit');
    elgg_register_ajax_view('ajax/tour_stop/save');
    elgg_extend_view('page/elements/footer', 'tour/outline');
    elgg_extend_view('css/elgg', 'css/tour');
    elgg_extend_view('css/admin', 'css/tour_admin');
    elgg_register_action('tour_page/save', __DIR__ . '/actions/tour_page/save.php', 'admin');
    elgg_register_action('tour_page/reorder', __DIR__ . '/actions/tour_page/reorder.php', 'admin');
    elgg_register_action('tour_page/delete', __DIR__ . '/actions/tour_page/delete.php', 'admin');
    elgg_register_action('tour_stop/save', __DIR__ . '/actions/tour_stop/save.php', 'admin');
    elgg_register_action('tour_stop/delete', __DIR__ . '/actions/tour_stop/delete.php', 'admin');
    elgg_register_page_handler('tour', 'tour_page_handler');
    elgg_register_page_handler('tour_stop', 'tour_page_handler');
    // For convenience
    elgg_register_admin_menu_item('administer', 'tour', 'administer_utilities');
    elgg_register_menu_item('topbar', array('name' => 'tour', 'href' => '', 'text' => elgg_echo('tour:start'), 'id' => 'tour-start', 'section' => 'alt', 'data-library' => $js_lib));
    elgg_register_plugin_hook_handler('register', 'menu:entity', array('Tour\\Page\\EntityMenu', 'setUp'));
    elgg_register_plugin_hook_handler('register', 'menu:entity', array('Tour\\Stop\\EntityMenu', 'setUp'));
    elgg_register_viewtype('json');
}
Пример #22
0
/**
 * 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");
}
Пример #23
0
function friend_request_init()
{
    // extend css
    elgg_extend_view("css/elgg", "css/friend_request/site");
    // Page handlers
    // unregister friendsof
    elgg_unregister_page_handler("friendsof");
    //This will let users view their friend requests
    elgg_register_page_handler('friend_request', 'friend_request_page_handler');
    // Events
    // unregister default elgg friend handler
    elgg_unregister_event_handler("create", "friend", "relationship_notification_hook");
    // Handle our add action event
    elgg_register_event_handler("create", "friendrequest", "friend_request_event_create_friendrequest");
    // Plugin hooks
    elgg_register_plugin_hook_handler("register", "menu:user_hover", "friend_request_user_menu_handler");
    elgg_register_plugin_hook_handler("register", "menu:entity", "friend_request_entity_menu_handler");
    // Actions
    // This overwrites the original friend requesting stuff.
    elgg_register_action("friends/add", dirname(__FILE__) . "/actions/friends/add.php");
    // We need to override the friend remove action to remove the relationship we created
    elgg_register_action("friends/remove", dirname(__FILE__) . "/actions/friends/removefriend.php");
    // friend request actions
    elgg_register_action("friend_request/approve", dirname(__FILE__) . "/actions/approve.php");
    elgg_register_action("friend_request/decline", dirname(__FILE__) . "/actions/decline.php");
    elgg_register_action("friend_request/revoke", dirname(__FILE__) . "/actions/revoke.php");
}
Пример #24
0
/**
 * 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');
}
Пример #25
0
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');
}
Пример #26
0
function elggchat_init()
{
    elgg_extend_view('css/admin', 'elggchat/admin_css');
    elgg_extend_view('css/elgg', 'elggchat/css');
    $js_elggchat_sound = elgg_get_simplecache_url('js', 'elggchat/buzz.js');
    elgg_register_simplecache_view('js/elggchat/buzz.js');
    elgg_register_js('elggchat_sound', $js_elggchat_sound, 'head', 400);
    elgg_define_js('elggchat_scroll', array('src' => elgg_get_site_url() . 'mod/elggchat/views/default/js/elggchat/jquery.scrollTo.js'));
    if (elgg_is_logged_in()) {
        if (elgg_get_plugin_user_setting("enableChat", 0, "elggchat") != "no") {
            elgg_extend_view('page/elements/footer', 'elggchat/session_monitor');
        }
    }
    elgg_register_admin_menu_item('administer', 'elggchat', 'administer_utilities');
    // Extend avatar hover menu
    elgg_register_plugin_hook_handler('register', 'menu:user_hover', 'elggchat_user_hover_menu');
    // Register cron job
    $keepsessions = elgg_get_plugin_setting("keepsessions", "elggchat");
    if (elgg_get_plugin_setting("keepsessions", "elggchat") != "yes") {
        elgg_register_plugin_hook_handler('cron', 'hourly', 'elggchat_session_cleanup');
    }
    // Actions
    $action_path = elgg_get_plugins_path() . 'elggchat/actions';
    elgg_register_action("elggchat/create", "{$action_path}/create.php", "logged_in");
    elgg_register_action("elggchat/post_message", "{$action_path}/post_message.php", "logged_in");
    elgg_register_action("elggchat/poll", "{$action_path}/poll.php", "logged_in");
    elgg_register_action("elggchat/invite", "{$action_path}/invite.php", "logged_in");
    elgg_register_action("elggchat/leave", "{$action_path}/leave.php", "logged_in");
    elgg_register_action("elggchat/get_smiley", "{$action_path}/get_smiley.php", "logged_in");
    elgg_register_action("elggchat/admin_message", "{$action_path}/admin_message.php", "admin");
    elgg_register_action("elggchat/delete_session", "{$action_path}/delete_session.php", "admin");
    // Logout event handler
    elgg_register_event_handler('logout:before', 'user', 'elggchat_logout_handler');
}
Пример #27
0
/**
 * river_comments
 *
 * @author Pedro Prez (modificado por mariano tomasini forosdroid.com)
 * @link http://community.elgg.org/pg/profile/pedroprez
 * @copyright (c) Keetup 2010
 * @link http://www.keetup.com/
 * @license GNU General Public License (GPL) version 2
 */
function river_comments_init()
{
    global $CONFIG;
    elgg_register_js('ui.widgets', $CONFIG->wwwroot . "mod/river_comments/js/lib/ui.widgets.js");
    //Page Handler
    elgg_register_page_handler('river_comments', 'river_comments_page_handler');
    //Extend css view
    elgg_extend_view('css/elgg', 'river_comments/css');
    //Elastic Plugin
    elgg_extend_view('page/elements/footer', 'river_comments/footer', 400);
    //Extend js view on riverdashboard
    elgg_extend_view('page/elements/footer', 'river_comments/js', 450);
    elgg_extend_view('riverdashboard/js', 'river_comments/riverdashboardjs');
    elgg_extend_view('page/elements/comments', 'river_comments/comments');
    //View for river actions
    elgg_extend_view('river/item/actions', 'river_comments/item_action');
    elgg_extend_view('river/elements/responses', 'river/responses');
    //Print the plugin version
    elgg_extend_view('head', 'river_comments/version');
    if (elgg_is_admin_logged_in()) {
        elgg_extend_view('page_elements/header_contents', 'river_comments/comments');
    }
    //Actions
    $actions_path = elgg_get_plugins_path() . "river_comments/actions/river_comments";
    elgg_register_action("river_comments/add", "{$actions_path}/add.php");
    elgg_register_action("river_comments/delete", "{$actions_path}/delete.php");
}
Пример #28
0
/**
 * 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");
}
Пример #29
0
/**
* Init the OhYesChat
*
* @access system
* @return null;
*/
function OhYesChat()
{
    $plugin = elgg_get_plugins_path() . 'OhYesChat/';
    elgg_register_simplecache_view('css/ohyes/ohyeschat');
    $ohyescss = elgg_get_simplecache_url('css', 'ohyes/ohyeschat');
    elgg_register_css('ohyeschat.css', $ohyescss);
    elgg_register_simplecache_view('css/ohyes/ohyeschat.admin');
    $ohyescssadmin = elgg_get_simplecache_url('css', 'ohyes/ohyeschat.admin');
    elgg_register_css('ohyeschat.admin.css', $ohyescssadmin);
    elgg_register_simplecache_view('js/ohyes/ohyescha');
    $ohyesjs = elgg_get_simplecache_url('js', 'ohyes/ohyeschat');
    elgg_register_js('ohyeschat.js', $ohyesjs);
    if (elgg_is_logged_in()) {
        elgg_register_page_handler('ohyeschat', 'ohyeschat_page_handler');
        elgg_register_page_handler('chat', 'ohyeschat_page_handler');
    }
    elgg_register_action('ohyes/chat/deletemssages', "{$plugin}actions/admin/deletemssages.php", 'admin');
    elgg_extend_view('page/elements/foot', 'ohyes/chat/bar');
    elgg_extend_view('page/elements/body', 'ohyes/header/chat', 1);
    elgg_extend_view('page/elements/body', 'ohyes/chat/sound');
    OhYesChat::loadCss();
    OhYesChat::loadJs();
    run_function_once('ohyeschat_setup');
    //register menu items
    OhYesChat::RegisterMenus();
}
Пример #30
0
function izap_zcontest_init()
{
    global $CONFIG;
    izap_plugin_init(GLOBAL_IZAP_CONTEST_PLUGIN);
    // asking group to include the izap_files
    if (is_callable('add_group_tool_option')) {
        add_group_tool_option(GLOBAL_IZAP_CONTEST_CHALLENGE_SUBTYPE, elgg_echo('izap-contest:challenge:group:enable'), true);
        elgg_extend_view('groups/tool_latest', GLOBAL_IZAP_CONTEST_PLUGIN . '/group_module');
    }
    elgg_register_page_handler(GLOBAL_IZAP_CONTEST_CHALLENGE_PAGEHANDLER, GLOBAL_IZAP_PAGEHANDLER);
    elgg_register_page_handler(GLOBAL_IZAP_CONTEST_QUIZ_PAGEHANDLER, GLOBAL_IZAP_PAGEHANDLER);
    elgg_register_action(GLOBAL_IZAP_CONTEST_QUIZ_PAGEHANDLER, GLOBAL_IZAP_PAGEHANDLER);
    elgg_register_page_handler(GLOBAL_IZAP_CONTEST_PAGEHANDLER, GLOBAL_IZAP_PAGEHANDLER);
    elgg_register_event_handler('izap', 'link', 'izap_contest_link_hook');
    elgg_register_menu_item('site', new ElggMenuItem('izap-contest', elgg_echo('izap-contest:contests'), IzapBase::setHref(array('context' => GLOBAL_IZAP_CONTEST_CHALLENGE_PAGEHANDLER, 'action' => 'list', 'vars' => array('all'), 'page_owner' => false))));
    if (elgg_get_context() == GLOBAL_IZAP_CONTEST_CHALLENGE_PAGEHANDLER) {
        $menu_item_add = new ElggMenuItem('izap-contest:challenge_add', elgg_echo('izap-contest:challenge:add'), IzapBase::setHref(array('context' => GLOBAL_IZAP_CONTEST_CHALLENGE_PAGEHANDLER, 'action' => 'add')));
        //elgg_register_menu_item('page', $menu_item_add);
        $menu_item_list = new ElggMenuItem('izap-contest:challenge_list', elgg_echo('izap-contest:challenge:all'), IzapBase::setHref(array('context' => GLOBAL_IZAP_CONTEST_CHALLENGE_PAGEHANDLER, 'action' => 'list', 'page_owner' => false, 'vars' => array('all'))));
        //elgg_register_menu_item('page', $menu_item_list);
        $menu_item_my_list = new ElggMenuItem('izap-contest:challenge_my_list', elgg_echo("izap-contest:chellenge:list", array("My")), IzapBase::setHref(array('context' => GLOBAL_IZAP_CONTEST_CHALLENGE_PAGEHANDLER, 'action' => 'list', 'page_owner' => false, 'vars' => array($_SESSION['user']->username))));
        //elgg_register_menu_item('page', $menu_item_my_list);
        $menu_item_my_accepted = new ElggMenuItem('izap-contest:challenge_my_myaccepted', elgg_echo('izap-contest:challenge:accepted'), IzapBase::setHref(array('context' => GLOBAL_IZAP_CONTEST_CHALLENGE_PAGEHANDLER, 'action' => 'accepted')));
        elgg_register_menu_item('page', $menu_item_my_accepted);
    }
}