/** * 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'); }
/** * Profile init function; sets up the profile functions * */ function profile_init() { global $CONFIG; require_once 'profile_lib.php'; // 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'); // Set up the menu for logged-in users if (isloggedin()) { add_menu(elgg_echo('profile:yours'), $_SESSION['user']->getURL() . '/extend'); } // 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'); // 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 elgg_extend_view('metatags', 'profile/metatags'); elgg_extend_view('css', 'profile/css'); elgg_extend_view('js/initialise_elgg', 'profile/javascript'); if (get_context() == 'profile') { elgg_extend_view('canvas_header/submenu', 'profile/submenu'); } // Extend context menu with admin links if (isadminloggedin()) { elgg_extend_view('profile/menu/links', 'profile/menu/adminwrapper', 10000); } // Now override icons register_plugin_hook('entity:icon:url', 'user', 'profile_usericon_hook'); }
/** * Profile init function */ function profile_init() { // Register a URL handler for users - this means that profile_url() // will dictate the URL for all ElggUser objects elgg_register_entity_url_handler('user', 'all', 'profile_url'); // Metadata on users needs to be independent register_metadata_as_independent('user'); elgg_register_simplecache_view('icon/user/default/tiny'); elgg_register_simplecache_view('icon/user/default/topbar'); elgg_register_simplecache_view('icon/user/default/small'); elgg_register_simplecache_view('icon/user/default/medium'); elgg_register_simplecache_view('icon/user/default/large'); elgg_register_simplecache_view('icon/user/default/master'); // Register a page handler, so we can have nice URLs elgg_register_page_handler('profile', 'profile_page_handler'); elgg_extend_view('html_head/extend', 'profile/metatags'); elgg_extend_view('css/elgg', 'profile/css'); elgg_extend_view('js/elgg', 'profile/js'); // allow ECML in parts of the profile elgg_register_plugin_hook_handler('get_views', 'ecml', 'profile_ecml_views_hook'); // allow admins to set default widgets for users on profiles elgg_register_plugin_hook_handler('get_list', 'default_widgets', 'profile_default_widgets_hook'); }
<?php /** * Elgg profile plugin * * @package ElggProfile */ elgg_register_event_handler('init', 'system', 'profile_init', 1); // Metadata on users needs to be independent // outside of init so it happens earlier in boot. See #3316 register_metadata_as_independent('user'); /** * Profile init function */ function profile_init() { // Register a URL handler for users elgg_register_plugin_hook_handler('entity:url', 'user', 'profile_set_url'); elgg_register_page_handler('profile', 'profile_page_handler'); elgg_extend_view('elgg.css', 'profile/css'); // allow ECML in parts of the profile elgg_register_plugin_hook_handler('get_views', 'ecml', 'profile_ecml_views_hook'); // allow admins to set default widgets for users on profiles elgg_register_plugin_hook_handler('get_list', 'default_widgets', 'profile_default_widgets_hook'); elgg_register_plugin_hook_handler('register', 'menu:topbar', '_profile_topbar_menu'); elgg_register_plugin_hook_handler('register', 'menu:title', '_profile_title_menu'); } /** * Profile page handler * * @param array $page Array of URL segments passed by the page handling mechanism