aboutsummaryrefslogtreecommitdiff
path: root/mod/members/start.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/members/start.php')
-rw-r--r--mod/members/start.php56
1 files changed, 33 insertions, 23 deletions
diff --git a/mod/members/start.php b/mod/members/start.php
index fa6810157..54787cd16 100644
--- a/mod/members/start.php
+++ b/mod/members/start.php
@@ -1,31 +1,41 @@
<?php
+/**
+ * Members plugin intialization
+ */
+
+elgg_register_event_handler('init', 'system', 'members_init');
/**
- * Elgg members plugin
- * This plugin has some interesting options for users; see who is online, site members,
- *
- * @package Elggmembers
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
+ * Initialize page handler and site menu item
*/
-
function members_init() {
-
- global $CONFIG;
-
- elgg_extend_view('css','members/css');
-
-
- // Set up menu for logged in users
- if (isloggedin()) {
- add_menu(elgg_echo('members:members'), $CONFIG->wwwroot . "mod/members/index.php");
- }
-
+ elgg_register_page_handler('members', 'members_page_handler');
+
+ $item = new ElggMenuItem('members', elgg_echo('members'), 'members');
+ elgg_register_menu_item('site', $item);
}
-// @todo - use page handler for members index
-register_elgg_event_handler('pagesetup','system','members_pagesetup');
+/**
+ * Members page handler
+ *
+ * @param array $page url segments
+ * @return bool
+ */
+function members_page_handler($page) {
+ $base = elgg_get_plugins_path() . 'members/pages/members';
+
+ if (!isset($page[0])) {
+ $page[0] = 'newest';
+ }
+
+ $vars = array();
+ $vars['page'] = $page[0];
-register_elgg_event_handler('init','system','members_init');
+ if ($page[0] == 'search') {
+ $vars['search_type'] = $page[1];
+ require_once "$base/search.php";
+ } else {
+ require_once "$base/index.php";
+ }
+ return true;
+}