From 03662d5a895e9c097d89d281093d125c9c0ed942 Mon Sep 17 00:00:00 2001 From: Richard McGirr Date: Sat, 14 Nov 2015 06:10:41 -0500 Subject: [ticket/14283] Add a Manage Group link on a group page PHPBB3-14283 --- phpBB/language/en/memberlist.php | 1 + phpBB/memberlist.php | 19 +++++++++++++++++-- phpBB/styles/prosilver/template/memberlist_body.html | 4 ++++ .../styles/subsilver2/template/memberlist_group.html | 2 +- 4 files changed, 23 insertions(+), 3 deletions(-) (limited to 'phpBB') diff --git a/phpBB/language/en/memberlist.php b/phpBB/language/en/memberlist.php index 5605f8f4b5..c7b2bf55d1 100644 --- a/phpBB/language/en/memberlist.php +++ b/phpBB/language/en/memberlist.php @@ -101,6 +101,7 @@ $lang = array_merge($lang, array( 'LOGIN_EXPLAIN_SEARCHUSER' => 'The board requires you to be registered and logged in to search users.', 'LOGIN_EXPLAIN_VIEWPROFILE' => 'The board requires you to be registered and logged in to view profiles.', + 'MANAGE_GROUP' => 'Manage Group', 'MORE_THAN' => 'More than', 'NO_CONTACT_FORM' => 'The board administrator contact form has been disabled.', diff --git a/phpBB/memberlist.php b/phpBB/memberlist.php index 9604a5a21f..ad28b2d0b5 100644 --- a/phpBB/memberlist.php +++ b/phpBB/memberlist.php @@ -1088,7 +1088,7 @@ switch ($mode) if ($mode == 'group') { // We JOIN here to save a query for determining membership for hidden groups. ;) - $sql = 'SELECT g.*, ug.user_id + $sql = 'SELECT g.*, ug.user_id, ug.group_leader FROM ' . GROUPS_TABLE . ' g LEFT JOIN ' . USER_GROUP_TABLE . ' ug ON (ug.user_pending = 0 AND ug.user_id = ' . $user->data['user_id'] . " AND ug.group_id = $group_id) WHERE g.group_id = $group_id"; @@ -1147,6 +1147,20 @@ switch ($mode) $user_rank_data['img'] .= '
'; } } + // include modules for manage groups link display or not + // need to ensure the modulr is active + if (!class_exists('p_master')) + { + include($phpbb_root_path . 'includes/functions_module.' . $phpEx); + } + $module = new p_master; + $module->list_modules('ucp'); + + $can_manage_group = false; + if ($module->is_active('ucp_groups', 'manage') && ($group_row['group_leader'] || ($group_row['group_founder_manage'] && $user->data['user_type'] == USER_FOUNDER))) + { + $can_manage_group = true; + } $template->assign_vars(array( 'GROUP_DESC' => generate_text_for_display($group_row['group_desc'], $group_row['group_desc_uid'], $group_row['group_desc_bitfield'], $group_row['group_desc_options']), @@ -1159,7 +1173,8 @@ switch ($mode) 'RANK_IMG' => $user_rank_data['img'], 'RANK_IMG_SRC' => $user_rank_data['img_src'], - 'U_PM' => ($auth->acl_get('u_sendpm') && $auth->acl_get('u_masspm_group') && $group_row['group_receive_pm'] && $config['allow_privmsg'] && $config['allow_mass_pm']) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm&mode=compose&g=' . $group_id) : '',) + 'U_PM' => ($auth->acl_get('u_sendpm') && $auth->acl_get('u_masspm_group') && $group_row['group_receive_pm'] && $config['allow_privmsg'] && $config['allow_mass_pm']) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm&mode=compose&g=' . $group_id) : '', + 'U_MANAGE' => ($can_manage_group) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=ucp_groups&mode=manage') : false,) ); $sql_select = ', ug.group_leader'; diff --git a/phpBB/styles/prosilver/template/memberlist_body.html b/phpBB/styles/prosilver/template/memberlist_body.html index e0215848d0..5fba59159c 100644 --- a/phpBB/styles/prosilver/template/memberlist_body.html +++ b/phpBB/styles/prosilver/template/memberlist_body.html @@ -14,7 +14,11 @@

style="color:#{GROUP_COLOR};">{GROUP_NAME}

+ +

{L_MANAGE_GROUP}

+

{GROUP_DESC} {GROUP_TYPE}

+

{AVATAR_IMG} {RANK_IMG} diff --git a/phpBB/styles/subsilver2/template/memberlist_group.html b/phpBB/styles/subsilver2/template/memberlist_group.html index 4140c8cdbf..ff8c96c120 100644 --- a/phpBB/styles/subsilver2/template/memberlist_group.html +++ b/phpBB/styles/subsilver2/template/memberlist_group.html @@ -5,7 +5,7 @@ {L_GROUP_NAME}{L_COLON} - style="color:#{GROUP_COLOR}">{GROUP_NAME} + style="color:#{GROUP_COLOR}">{GROUP_NAME} {L_MANAGE_GROUP} {AVATAR_IMG}
{RANK_IMG}{GROUP_RANK}

{PM_IMG} -- cgit v1.2.1 From df9443a3c65f63da41fd12b2369302c0f336ba8c Mon Sep 17 00:00:00 2001 From: Richard McGirr Date: Sat, 14 Nov 2015 14:48:54 -0500 Subject: [ticket/14283] Fix spelling of the word module PHPBB3-14283 --- phpBB/memberlist.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'phpBB') diff --git a/phpBB/memberlist.php b/phpBB/memberlist.php index ad28b2d0b5..ba7ed60298 100644 --- a/phpBB/memberlist.php +++ b/phpBB/memberlist.php @@ -1148,7 +1148,7 @@ switch ($mode) } } // include modules for manage groups link display or not - // need to ensure the modulr is active + // need to ensure the module is active if (!class_exists('p_master')) { include($phpbb_root_path . 'includes/functions_module.' . $phpEx); -- cgit v1.2.1 From 3a55cead92a2b8118aa86e43740ca258b7eb0607 Mon Sep 17 00:00:00 2001 From: Richard McGirr Date: Wed, 18 Nov 2015 06:29:23 -0500 Subject: [ticket/14283] Remove group founder and free up memory PHPBB3-14283 --- phpBB/memberlist.php | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) (limited to 'phpBB') diff --git a/phpBB/memberlist.php b/phpBB/memberlist.php index ba7ed60298..325c575ea9 100644 --- a/phpBB/memberlist.php +++ b/phpBB/memberlist.php @@ -1149,17 +1149,21 @@ switch ($mode) } // include modules for manage groups link display or not // need to ensure the module is active - if (!class_exists('p_master')) - { - include($phpbb_root_path . 'includes/functions_module.' . $phpEx); - } - $module = new p_master; - $module->list_modules('ucp'); - $can_manage_group = false; - if ($module->is_active('ucp_groups', 'manage') && ($group_row['group_leader'] || ($group_row['group_founder_manage'] && $user->data['user_type'] == USER_FOUNDER))) + if ($user->data['is_registered']) { - $can_manage_group = true; + if (!class_exists('p_master')) + { + include($phpbb_root_path . 'includes/functions_module.' . $phpEx); + } + $module = new p_master; + $module->list_modules('ucp'); + + if ($module->is_active('ucp_groups', 'manage') && $group_row['group_leader']) + { + $can_manage_group = true; + } + unset($module); } $template->assign_vars(array( -- cgit v1.2.1 From 31510c0ae7bfa154d1c94d2146cf1598d9fcdab6 Mon Sep 17 00:00:00 2001 From: Richard McGirr Date: Wed, 25 Nov 2015 06:02:53 -0500 Subject: [ticket/14283] Check for user being group leader PHPBB3-14283 --- phpBB/memberlist.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'phpBB') diff --git a/phpBB/memberlist.php b/phpBB/memberlist.php index 325c575ea9..6be44587f5 100644 --- a/phpBB/memberlist.php +++ b/phpBB/memberlist.php @@ -1150,7 +1150,7 @@ switch ($mode) // include modules for manage groups link display or not // need to ensure the module is active $can_manage_group = false; - if ($user->data['is_registered']) + if ($user->data['is_registered'] && $group_row['group_leader']) { if (!class_exists('p_master')) { @@ -1159,7 +1159,7 @@ switch ($mode) $module = new p_master; $module->list_modules('ucp'); - if ($module->is_active('ucp_groups', 'manage') && $group_row['group_leader']) + if ($module->is_active('ucp_groups', 'manage')) { $can_manage_group = true; } -- cgit v1.2.1