aboutsummaryrefslogtreecommitdiff
path: root/mod/notifications/groups.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/notifications/groups.php')
-rw-r--r--mod/notifications/groups.php88
1 files changed, 46 insertions, 42 deletions
diff --git a/mod/notifications/groups.php b/mod/notifications/groups.php
index 97adebb82..973f3493c 100644
--- a/mod/notifications/groups.php
+++ b/mod/notifications/groups.php
@@ -1,42 +1,46 @@
-<?php
-
- /**
- * Elgg notifications plugin group index
- *
- * @package ElggNotifications
- * @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/
- */
-
- // Load Elgg framework
- require_once(dirname(dirname(dirname(__FILE__))) . '/engine/start.php');
-
- // Ensure only logged-in users can see this page
- gatekeeper();
-
- // Set the context to settings
- set_context('settings');
-
- // Get the form
- global $SESSION, $CONFIG;
- $people = array();
-
- $groupmemberships = get_entities_from_relationship('member',$_SESSION['user']->guid,false,'group','',0,'',9999);
-
- $body = elgg_view('input/form',array(
- 'body' => elgg_view('notifications/subscriptions/groupsform',array(
- 'groups' => $groupmemberships
- )),
- 'method' => 'post',
- 'action' => $CONFIG->wwwroot . 'action/notificationsettings/groupsave'
- ));
-
- // Insert it into the correct canvas layout
- $body = elgg_view_layout('two_column_left_sidebar','',$body);
-
- // Draw the page
- page_draw(elgg_echo('notifications:subscriptions:changesettings:groups'),$body);
-
-?> \ No newline at end of file
+<?php
+/**
+ * Elgg notifications plugin group index
+ *
+ * @package ElggNotifications
+ *
+ * @uses $user ElggUser
+ */
+
+if (!isset($user) || !($user instanceof ElggUser)) {
+ $url = 'notifications/group/' . elgg_get_logged_in_user_entity()->username;
+ forward($url);
+}
+
+elgg_set_page_owner_guid($user->guid);
+
+// Set the context to settings
+elgg_set_context('settings');
+
+$title = elgg_echo('notifications:subscriptions:changesettings:groups');
+
+elgg_push_breadcrumb(elgg_echo('settings'), "settings/user/$user->username");
+elgg_push_breadcrumb($title);
+
+// Get the form
+$people = array();
+
+$groupmemberships = elgg_get_entities_from_relationship(array(
+ 'relationship' => 'member',
+ 'relationship_guid' => $user->guid,
+ 'type' => 'group',
+ 'limit' => false,
+));
+
+$body = elgg_view_form('notificationsettings/groupsave', array(), array(
+ 'groups' => $groupmemberships,
+ 'user' => $user,
+));
+
+$params = array(
+ 'content' => $body,
+ 'title' => $title,
+);
+$body = elgg_view_layout('one_sidebar', $params);
+
+echo elgg_view_page($title, $body);