diff --git a/phpBB/includes/ucp/ucp_attachments.php b/phpBB/includes/ucp/ucp_attachments.php
index 2e479b0654..9e8cd2d2e8 100644
--- a/phpBB/includes/ucp/ucp_attachments.php
+++ b/phpBB/includes/ucp/ucp_attachments.php
@@ -26,10 +26,11 @@ class ucp_attachments extends module
if ($delete && sizeof($delete_ids))
{
- $s_hidden_fields = '';
+ $s_hidden_fields = array('delete' => 1);
+
foreach ($delete_ids as $attachment_id)
{
- $s_hidden_fields .= '';
+ $s_hidden_fields['attachment'][$attachment_id] = 1;
}
if (confirm_box(true))
@@ -44,7 +45,7 @@ class ucp_attachments extends module
}
else
{
- confirm_box(false, (sizeof($delete_ids) == 1) ? 'DELETE_ATTACHMENT' : 'DELETE_ATTACHMENTS', $s_hidden_fields);
+ confirm_box(false, (sizeof($delete_ids) == 1) ? 'DELETE_ATTACHMENT' : 'DELETE_ATTACHMENTS', build_hidden_fields($s_hidden_fields));
}
}
diff --git a/phpBB/includes/ucp/ucp_groups.php b/phpBB/includes/ucp/ucp_groups.php
index 68b6ad1c68..dbcd859997 100644
--- a/phpBB/includes/ucp/ucp_groups.php
+++ b/phpBB/includes/ucp/ucp_groups.php
@@ -20,6 +20,8 @@ class ucp_groups extends module
$user->add_lang('groups');
+ $return_page = '
' . sprintf($user->lang['RETURN_PAGE'], '", '');
+
$submit = (!empty($_POST['submit'])) ? true : false;
$delete = (!empty($_POST['delete'])) ? true : false;
$error = $data = array();
@@ -28,6 +30,223 @@ class ucp_groups extends module
{
case 'membership':
+ if ($submit || isset($_POST['change_default']))
+ {
+ $action = (isset($_POST['change_default'])) ? 'change_default' : request_var('action', '');
+ $group_id = ($action == 'change_default') ? request_var('default', 0) : request_var('selected', 0);
+
+ if (!$group_id)
+ {
+ trigger_error('NO_GROUP_SELECTED');
+ }
+
+ $sql = 'SELECT group_id, group_name, group_type
+ FROM ' . GROUPS_TABLE . "
+ WHERE group_id IN ($group_id, {$user->data['group_id']})";
+ $result = $db->sql_query($sql);
+ $group_row = array();
+
+ while ($row = $db->sql_fetchrow($result))
+ {
+ $group_row[$row['group_id']] = $row;
+ }
+ $db->sql_freeresult($result);
+
+ if (!sizeof($group_row))
+ {
+ trigger_error('GROUP_NOT_EXIST');
+ }
+
+ $group_row[$group_id]['group_name'] = ($group_row[$group_id]['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $group_row[$group_id]['group_name']] : $group_row[$group_id]['group_name'];
+ $group_row[$user->data['group_id']]['group_name'] = ($group_row[$user->data['group_id']]['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $group_row[$user->data['group_id']]['group_name']] : $group_row[$user->data['group_id']]['group_name'];
+
+
+ switch ($action)
+ {
+ case 'change_default':
+ // User already having this group set as default?
+ if ($group_id == $user->data['group_id'])
+ {
+ trigger_error($user->lang['ALREADY_DEFAULT_GROUP'] . $return_page);
+ }
+
+ // User needs to be member of the group in order to make it default
+ if (!group_memberships($group_id, $user->data['user_id'], true))
+ {
+ trigger_error($user->lang['NOT_MEMBER_OF_GROUP'] . $return_page);
+ }
+
+ if (confirm_box(true))
+ {
+ group_user_attributes('default', $group_id, $user->data['user_id']);
+
+ add_log('user', $user->data['user_id'], 'LOG_USER_GROUP_CHANGE', sprintf($user->lang['USER_GROUP_CHANGE'], $group_row[$group_id]['group_name'], $group_row[$user->data['group_id']]['group_name']));
+
+ meta_refresh(3, $phpbb_root_path . "ucp.$phpEx$SID&i=$id&mode=$mode");
+ trigger_error($user->lang['CHANGED_DEFAULT_GROUP'] . $return_page);
+ }
+ else
+ {
+ $s_hidden_fields = array(
+ 'default' => $group_id,
+ 'change_default'=> true
+ );
+
+ confirm_box(false, sprintf($user->lang['GROUP_CHANGE_DEFAULT'], $group_row[$group_id]['group_name']), build_hidden_fields($s_hidden_fields));
+ }
+
+ break;
+
+ case 'resign':
+
+ if (!($row = group_memberships($group_id, $user->data['user_id'])))
+ {
+ trigger_error($user->lang['NOT_MEMBER_OF_GROUP'] . $return_page);
+ }
+ list(, $row) = each($row);
+
+ if (confirm_box(true))
+ {
+ group_user_del($group_id, $user->data['user_id']);
+
+ add_log('user', $user->data['user_id'], 'LOG_USER_GROUP_RESIGN', $group_row[$group_id]['group_name']);
+
+ meta_refresh(3, $phpbb_root_path . "ucp.$phpEx$SID&i=$id&mode=$mode");
+ trigger_error($user->lang[($row['user_pending']) ? 'GROUP_RESIGNED_PENDING' : 'GROUP_RESIGNED_MEMBERSHIP'] . $return_page);
+ }
+ else
+ {
+ $s_hidden_fields = array(
+ 'selected' => $group_id,
+ 'action' => 'resign',
+ 'submit' => true
+ );
+
+ confirm_box(false, ($row['user_pending']) ? 'GROUP_RESIGN_PENDING' : 'GROUP_RESIGN_MEMBERSHIP', build_hidden_fields($s_hidden_fields));
+ }
+
+ break;
+
+ case 'join':
+
+ if (group_memberships($group_id, $user->data['user_id'], true))
+ {
+ trigger_error($user->lang['ALREADY_IN_GROUP'] . $return_page);
+ }
+
+ // Check permission to join (open group or request)
+ if ($group_row[$group_id]['group_type'] != GROUP_OPEN && $group_row[$group_id]['group_type'] != GROUP_FREE)
+ {
+ trigger_error($user->lang['CANNOT_JOIN_GROUP'] . $return_page);
+ }
+
+ if (confirm_box(true))
+ {
+ if ($group_row[$group_id]['group_type'] == GROUP_FREE)
+ {
+ group_user_add($group_id, $user->data['user_id']);
+
+ $email_template = 'group_added';
+ }
+ else
+ {
+ group_user_add($group_id, $user->data['user_id'], false, false, false, 0, 1);
+
+ $email_template = 'group_request';
+ }
+
+ include_once($phpbb_root_path . 'includes/functions_messenger.'.$phpEx);
+ $messenger = new messenger();
+
+ $email_sig = str_replace('
', "\n", "-- \n" . $config['board_email_sig']);
+
+ $sql = 'SELECT u.username, u.user_email, u.user_notify_type, u.user_jabber, u.user_lang
+ FROM ' . USER_GROUP_TABLE . ' ug, ' . USERS_TABLE . ' u
+ WHERE ug.user_id = u.user_id
+ AND ' . (($group_row[$group_id]['group_type'] == GROUP_FREE) ? "ug.user_id = {$user->data['user_id']}" : 'ug.group_leader = 1') . "
+ AND ug.group_id = $group_id";
+ $result = $db->sql_query($sql);
+
+ while ($row = $db->sql_fetchrow($result))
+ {
+ $messenger->template($email_template, $row['user_lang']);
+
+ $messenger->replyto($config['board_email']);
+ $messenger->to($row['user_email'], $row['username']);
+ $messenger->im($row['user_jabber'], $row['username']);
+
+ $messenger->assign_vars(array(
+ 'EMAIL_SIG' => $email_sig,
+ 'SITENAME' => $config['sitename'],
+ 'USERNAME' => $row['username'],
+ 'GROUP_NAME' => $group_row[$group_id]['group_name'],
+
+ 'U_PENDING' => generate_board_url() . "/ucp.$phpEx?i=usergroups&mode=manage",
+ 'U_GROUP' => generate_board_url() . "/memberlist.$phpEx?mode=group&g=$group_id")
+ );
+
+ $messenger->send($row['user_notify_type']);
+ $messenger->reset();
+ }
+ $db->sql_freeresult($result);
+
+ $messenger->save_queue();
+
+ add_log('user', $user->data['user_id'], 'LOG_USER_GROUP_JOIN' . (($group_row[$group_id]['group_type'] == GROUP_FREE) ? '' : '_PENDING'), $group_row[$group_id]['group_name']);
+
+ meta_refresh(3, $phpbb_root_path . "ucp.$phpEx$SID&i=$id&mode=$mode");
+ trigger_error($user->lang[($group_row[$group_id]['group_type'] == GROUP_FREE) ? 'GROUP_JOINED' : 'GROUP_JOINED_PENDING'] . $return_page);
+ }
+ else
+ {
+ $s_hidden_fields = array(
+ 'selected' => $group_id,
+ 'action' => 'join',
+ 'submit' => true
+ );
+
+ confirm_box(false, ($group_row[$group_id]['group_type'] == GROUP_FREE) ? 'GROUP_JOIN' : 'GROUP_JOIN_PENDING', build_hidden_fields($s_hidden_fields));
+ }
+
+ break;
+
+ case 'demote':
+
+ if (!($row = group_memberships($group_id, $user->data['user_id'])))
+ {
+ trigger_error($user->lang['NOT_MEMBER_OF_GROUP'] . $return_page);
+ }
+ list(, $row) = each($row);
+
+ if (!$row['group_leader'])
+ {
+ trigger_error($user->lang['NOT_LEADER_OF_GROUP'] . $return_page);
+ }
+
+ if (confirm_box(true))
+ {
+ group_user_attributes('demote', $group_id, $user->data['user_id']);
+
+ add_log('user', $user->data['user_id'], 'LOG_USER_GROUP_DEMOTE', $group_row[$group_id]['group_name']);
+
+ meta_refresh(3, $phpbb_root_path . "ucp.$phpEx$SID&i=$id&mode=$mode");
+ trigger_error($user->lang['USER_GROUP_DEMOTED'] . $return_page);
+ }
+ else
+ {
+ $s_hidden_fields = array(
+ 'selected' => $group_id,
+ 'action' => 'demote',
+ 'submit' => true
+ );
+
+ confirm_box(false, 'USER_GROUP_DEMOTE', build_hidden_fields($s_hidden_fields));
+ }
+
+ break;
+ }
+ }
+
$sql = 'SELECT g.group_id, g.group_name, g.group_description, g.group_type, ug.group_leader, ug.user_pending
FROM ' . GROUPS_TABLE . ' g, ' . USER_GROUP_TABLE . ' ug
WHERE ug.user_id = ' . $user->data['user_id'] . '
@@ -41,16 +260,40 @@ class ucp_groups extends module
{
$block = ($row['group_leader']) ? 'leader' : (($row['user_pending']) ? 'pending' : 'member');
+ switch ($row['group_type'])
+ {
+ case GROUP_OPEN:
+ $group_status = 'OPEN';
+ break;
+
+ case GROUP_CLOSED:
+ $group_status = 'CLOSED';
+ break;
+
+ case GROUP_HIDDEN:
+ $group_status = 'HIDDEN';
+ break;
+
+ case GROUP_SPECIAL:
+ $group_status = 'SPECIAL';
+ break;
+
+ case GROUP_FREE:
+ $group_status = 'FREE';
+ break;
+ }
+
$template->assign_block_vars($block, array(
'GROUP_ID' => $row['group_id'],
'GROUP_NAME' => ($row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $row['group_name']] : $row['group_name'],
'GROUP_DESC' => ($row['group_type'] <> GROUP_SPECIAL) ? $row['group_description'] : $user->lang['GROUP_IS_SPECIAL'],
'GROUP_SPECIAL' => ($row['group_type'] <> GROUP_SPECIAL) ? false : true,
+ 'GROUP_STATUS' => $user->lang['GROUP_IS_' . $group_status],
- 'U_VIEW_GROUP' => "memberlist.$phpEx$SID&mode=group&g=" . $row['group_id'],
+ 'U_VIEW_GROUP' => "{$phpbb_root_path}memberlist.$phpEx$SID&mode=group&g={$row['group_id']}",
'S_GROUP_DEFAULT' => ($row['group_id'] == $user->data['group_id']) ? true : false,
- 'S_ROW_COUNT' => ${$block . '_count'}++,)
+ 'S_ROW_COUNT' => ${$block . '_count'}++)
);
$group_id_ary[] = $row['group_id'];
@@ -69,17 +312,41 @@ class ucp_groups extends module
$nonmember_count = 0;
while ($row = $db->sql_fetchrow($result))
{
+ switch ($row['group_type'])
+ {
+ case GROUP_OPEN:
+ $group_status = 'OPEN';
+ break;
+
+ case GROUP_CLOSED:
+ $group_status = 'CLOSED';
+ break;
+
+ case GROUP_HIDDEN:
+ $group_status = 'HIDDEN';
+ break;
+
+ case GROUP_SPECIAL:
+ $group_status = 'SPECIAL';
+ break;
+
+ case GROUP_FREE:
+ $group_status = 'FREE';
+ break;
+ }
$template->assign_block_vars('nonmember', array(
'GROUP_ID' => $row['group_id'],
'GROUP_NAME' => ($row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $row['group_name']] : $row['group_name'],
- 'GROUP_DESC' => $row['group_description'],
+ 'GROUP_DESC' => ($row['group_type'] <> GROUP_SPECIAL) ? $row['group_description'] : $user->lang['GROUP_IS_SPECIAL'],
'GROUP_SPECIAL' => ($row['group_type'] <> GROUP_SPECIAL) ? false : true,
'GROUP_CLOSED' => ($row['group_type'] <> GROUP_CLOSED || $auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel')) ? false : true,
+ 'GROUP_STATUS' => $user->lang['GROUP_IS_' . $group_status],
+ 'S_CAN_JOIN' => ($row['group_type'] == GROUP_OPEN || $row['group_type'] == GROUP_FREE) ? true : false,
- 'U_VIEW_GROUP' => "memberlist.$phpEx$SID&mode=group&g=" . $row['group_id'],
+ 'U_VIEW_GROUP' => "{$phpbb_root_path}memberlist.$phpEx$SID&mode=group&g={$row['group_id']}",
- 'S_ROW_COUNT' => $nonmember_count++,)
+ 'S_ROW_COUNT' => $nonmember_count++)
);
}
$db->sql_freeresult($result);
@@ -89,7 +356,9 @@ class ucp_groups extends module
'S_LEADER_COUNT' => $leader_count,
'S_MEMBER_COUNT' => $member_count,
'S_PENDING_COUNT' => $pending_count,
- 'S_NONMEMBER_COUNT' => $nonmember_count,)
+ 'S_NONMEMBER_COUNT' => $nonmember_count,
+
+ 'S_UCP_ACTION' => "{$phpbb_root_path}ucp.$phpEx$SID&i=$id&mode=$mode")
);
break;
@@ -98,30 +367,8 @@ class ucp_groups extends module
break;
}
- $this->display($user->lang['UCP_GROUPS'], 'ucp_groups_' . $mode . '.html');
+ $this->display($user->lang['UCP_GROUPS_' . strtoupper($mode)], 'ucp_groups_' . $mode . '.html');
}
}
-/*
- include($phpbb_root_path . 'includes/emailer.'.$phpEx);
- $emailer = new emailer($config['smtp_delivery']);
-
- $email_headers = 'From: ' . $config['board_email'] . "\nReturn-Path: " . $config['board_email'] . "\r\n";
-
- $emailer->use_template('group_request', $moderator['user_lang']);
- $emailer->email_address($moderator['user_email']);
- $emailer->set_subject();//$lang['Group_request']
- $emailer->extra_headers($email_headers);
-
- $emailer->assign_vars(array(
- 'SITENAME' => $config['sitename'],
- 'GROUP_MODERATOR' => $moderator['username'],
- 'EMAIL_SIG' => str_replace('
', "\n", "-- \n" . $config['board_email_sig']),
-
- 'U_GROUPCP' => $server_url . '?' . 'g' . "=$group_id&validate=true")
- );
- $emailer->send();
- $emailer->reset();
-*/
-
?>
\ No newline at end of file
diff --git a/phpBB/includes/ucp/ucp_pm_compose.php b/phpBB/includes/ucp/ucp_pm_compose.php
index 80a9c7676e..e1302bf470 100644
--- a/phpBB/includes/ucp/ucp_pm_compose.php
+++ b/phpBB/includes/ucp/ucp_pm_compose.php
@@ -244,8 +244,6 @@ function compose_pm($id, $mode, $action)
// Folder id has been determined by the SQL Statement
// $folder_id = request_var('f', PRIVMSGS_NO_BOX);
- $s_hidden_fields = '';
-
// Do we need to confirm ?
if (confirm_box(true))
{
@@ -261,8 +259,14 @@ function compose_pm($id, $mode, $action)
}
else
{
+ $s_hidden_fields = array(
+ 'p' => $msg_id,
+ 'f' => $folder_id,
+ 'action'=> 'delete'
+ );
+
// "{$phpbb_root_path}ucp.$phpEx$SID&i=pm&mode=compose"
- confirm_box(false, 'DELETE_MESSAGE', $s_hidden_fields);
+ confirm_box(false, 'DELETE_MESSAGE', build_hidden_fields($s_hidden_fields));
}
}
diff --git a/phpBB/includes/ucp/ucp_pm_options.php b/phpBB/includes/ucp/ucp_pm_options.php
index 129c6cb84f..bb0a22102b 100644
--- a/phpBB/includes/ucp/ucp_pm_options.php
+++ b/phpBB/includes/ucp/ucp_pm_options.php
@@ -158,10 +158,12 @@ function message_options($id, $mode, $global_privmsgs_rules, $global_rule_condit
trigger_error('CANNOT_REMOVE_FOLDER');
}
- $s_hidden_fields = '';
- $s_hidden_fields .= '';
- $s_hidden_fields .= '';
- $s_hidden_fields .= '';
+ $s_hidden_fields = array(
+ 'remove_folder_id' => $remove_folder_id,
+ 'remove_action' => $remove_action,
+ 'move_to' => $move_to,
+ 'remove_folder' => 1
+ );
// Do we need to confirm?
if (confirm_box(true))
@@ -226,7 +228,7 @@ function message_options($id, $mode, $global_privmsgs_rules, $global_rule_condit
}
else
{
- confirm_box(false, 'REMOVE_FOLDER', $s_hidden_fields);
+ confirm_box(false, 'REMOVE_FOLDER', build_hidden_fields($s_hidden_fields));
}
}
@@ -295,8 +297,6 @@ function message_options($id, $mode, $global_privmsgs_rules, $global_rule_condit
redirect("{$phpbb_root_path}ucp.$phpEx$SID&i=pm&mode=$mode");
}
- $s_hidden_fields = '';
-
// Do we need to confirm?
if (confirm_box(true))
{
@@ -314,7 +314,7 @@ function message_options($id, $mode, $global_privmsgs_rules, $global_rule_condit
}
else
{
- confirm_box(false, 'DELETE_RULE', $s_hidden_fields);
+ confirm_box(false, 'DELETE_RULE', build_hidden_fields(array('delete_rule' => array($delete_id => 1))));
}
}
diff --git a/phpBB/includes/ucp/ucp_register.php b/phpBB/includes/ucp/ucp_register.php
index 1a0c0e5eb9..775f3650cf 100644
--- a/phpBB/includes/ucp/ucp_register.php
+++ b/phpBB/includes/ucp/ucp_register.php
@@ -372,8 +372,11 @@ class ucp_register extends module
}
}
- $s_hidden_fields = '';
- $s_hidden_fields .= '';
+ $s_hidden_fields = build_hidden_fields(array(
+ 'agreed' => 'true',
+ 'coppa' => $coppa,
+ 'change_lang' => 0)
+ );
$confirm_image = '';
// Visual Confirmation - Show images
diff --git a/phpBB/language/en/admin.php b/phpBB/language/en/admin.php
index c566476aa1..9cc232b612 100644
--- a/phpBB/language/en/admin.php
+++ b/phpBB/language/en/admin.php
@@ -142,6 +142,7 @@ $lang += array(
'LOG_USER_INACTIVE' => 'User deactivated
» %s',
'LOG_USER_ACTIVE' => 'User activated
» %s',
+ 'LOG_USER_GROUP_CHANGE' => 'User changed default group
» %s',
'LOG_MASS_EMAIL' => 'Sent mass email
» %s',
diff --git a/phpBB/language/en/email/group_added.txt b/phpBB/language/en/email/group_added.txt
index 5707da9031..4f07fdb9cd 100644
--- a/phpBB/language/en/email/group_added.txt
+++ b/phpBB/language/en/email/group_added.txt
@@ -4,9 +4,9 @@ Charset: iso-8859-1
Congratulations,
You have been added to the "{GROUP_NAME}" group on {SITENAME}.
-This action was done by the group moderator or the site administrator, contact them for more information.
+This action was done by a group moderator or the site administrator, contact them for more information.
You can view your groups information here:
-{U_GROUPCP}
+{U_GROUP}
{EMAIL_SIG}
diff --git a/phpBB/language/en/email/group_request.txt b/phpBB/language/en/email/group_request.txt
index 8da7fa9f29..7b51823067 100644
--- a/phpBB/language/en/email/group_request.txt
+++ b/phpBB/language/en/email/group_request.txt
@@ -1,11 +1,11 @@
Subject: A request to join your group has been made
Charset: iso-8859-1
-Dear {GROUP_MODERATOR},
+Dear {USERNAME},
-A user has requested to join a group you moderator on {SITENAME}.
+A user has requested to join the group "{GROUP_NAME}" you moderate on {SITENAME}.
To approve or deny this request for group membership please visit the following link:
-{U_GROUPCP}
+{U_PENDING}
{EMAIL_SIG}
diff --git a/phpBB/language/en/groups.php b/phpBB/language/en/groups.php
index 6570e4d3bb..c741d371b7 100644
--- a/phpBB/language/en/groups.php
+++ b/phpBB/language/en/groups.php
@@ -34,33 +34,48 @@ $lang += array(
'CHANGED_DEFAULT_GROUP' => 'Successfully changed default group',
- 'GROUP_AVATAR' => 'Group avatar',
+ 'GROUP_AVATAR' => 'Group avatar',
'GROUP_CHANGE_DEFAULT' => 'Are you sure you want to change your default membership to the group "%s"?',
- 'GROUP_CLOSED' => 'Closed',
- 'GROUP_DESC' => 'Group description',
- 'GROUP_HIDDEN' => 'Hidden',
- 'GROUP_INFORMATION' => 'Usergroup Information',
- 'GROUP_MEMBERS' => 'Group members',
- 'GROUP_NAME' => 'Group name',
- 'GROUP_OPEN' => 'Open',
- 'GROUP_RANK' => 'Group rank',
- 'GROUP_TYPE' => 'Group type',
- 'GROUP_IS_CLOSED' => 'This is a closed group, new members cannot automatically join.',
- 'GROUP_IS_OPEN' => 'This is an open group, members can apply to join.',
- 'GROUP_IS_HIDDEN' => 'This is a hidden group, only members of this group can view its membership.',
- 'GROUP_IS_FREE' => 'This is a freely open group, all new members are welcome.',
- 'GROUP_IS_SPECIAL' => 'This is a special group, special groups are managed by the board administrators.',
+ 'GROUP_CLOSED' => 'Closed',
+ 'GROUP_DESC' => 'Group description',
+ 'GROUP_HIDDEN' => 'Hidden',
+ 'GROUP_INFORMATION' => 'Usergroup Information',
+ 'GROUP_JOIN' => 'Join Group',
+ 'GROUP_JOIN_CONFIRM' => 'Are you sure you want to join the selected group?',
+ 'GROUP_JOIN_PENDING' => 'Request to join group',
+ 'GROUP_JOIN_PENDING_CONFIRM' => 'Are you sure you want to request joining the selected group?',
+ 'GROUP_JOINED' => 'Successfully joined selected group',
+ 'GROUP_JOINED_PENDING' => 'Successfully requested group membership. Please wait for a group leader to approve your membership.',
+ 'GROUP_MEMBERS' => 'Group members',
+ 'GROUP_NAME' => 'Group name',
+ 'GROUP_OPEN' => 'Open',
+ 'GROUP_RANK' => 'Group rank',
+ 'GROUP_RESIGN_MEMBERSHIP' => 'Resign group membership',
+ 'GROUP_RESIGN_MEMBERSHIP_CONFIRM' => 'Are you sure you want to resign your membership from the selected group?',
+ 'GROUP_RESIGN_PENDING' => 'Resign pending group membership',
+ 'GROUP_RESIGN_PENDING_CONFIRM' => 'Are you sure you want to resign your pending membership from the selected group?',
+ 'GROUP_RESIGNED_MEMBERSHIP' => 'You were successfully removed from the selected group',
+ 'GROUP_RESIGNED_PENDING' => 'Your pending membership was successfully removed from the selected group',
+ 'GROUP_TYPE' => 'Group type',
+ 'GROUP_IS_CLOSED' => 'This is a closed group, new members cannot automatically join.',
+ 'GROUP_IS_OPEN' => 'This is an open group, members can apply to join.',
+ 'GROUP_IS_HIDDEN' => 'This is a hidden group, only members of this group can view its membership.',
+ 'GROUP_IS_FREE' => 'This is a freely open group, all new members are welcome.',
+ 'GROUP_IS_SPECIAL' => 'This is a special group, special groups are managed by the board administrators.',
- 'LOG_USER_GROUP_CHANGE' => 'User changed default group
» %s',
'LOGIN_EXPLAIN_GROUP' => 'You need to login to view group details',
- 'NOT_MEMBER_OF_GROUP' => 'The requested operation cannot be taken because you are not a member of the selected group',
+ 'NOT_LEADER_OF_GROUP' => 'The requested operation cannot be taken because you are not a leader of the selected group.',
+ 'NOT_MEMBER_OF_GROUP' => 'The requested operation cannot be taken because you are not a member of the selected group.',
'PRIMARY_GROUP' => 'Primary group',
'REMOVE_SELECTED' => 'Remove selected',
- 'USER_GROUP_CHANGE' => 'From "%1$s" group to "%2$s"',
+ 'USER_GROUP_CHANGE' => 'From "%1$s" group to "%2$s"',
+ 'USER_GROUP_DEMOTE' => 'Demote leadership',
+ 'USER_GROUP_DEMOTE_CONFIRM' => 'Are you sure you want to demote as group leader from the selected group?',
+ 'USER_GROUP_DEMOTED' => 'Successfully demoted your leadership.',
);
?>
\ No newline at end of file
diff --git a/phpBB/styles/subSilver/template/index_body.html b/phpBB/styles/subSilver/template/index_body.html
index 7b78daf63a..51b0ddff2d 100644
--- a/phpBB/styles/subSilver/template/index_body.html
+++ b/phpBB/styles/subSilver/template/index_body.html
@@ -70,7 +70,7 @@
- {L_DELETE_COOKIES}
+ {L_DELETE_COOKIES} | {L_THE_TEAM}
diff --git a/phpBB/styles/subSilver/template/memberlist_search.html b/phpBB/styles/subSilver/template/memberlist_search.html
index 53983faab2..dafe24107a 100644
--- a/phpBB/styles/subSilver/template/memberlist_search.html
+++ b/phpBB/styles/subSilver/template/memberlist_search.html
@@ -75,6 +75,12 @@ function marklist(status)
{L_USERGROUPS} | -|
---|---|
{L_GROUPS_EXPLAIN} | -|
{L_USERGROUPS} | +|
{L_GROUPS_EXPLAIN} | +|
{L_GROUP_DETAILS} - | {L_MARK} - |
Select: | -|
{L_GROUP_LEADER} | -|
{leader.GROUP_NAME} {leader.GROUP_DESC} |
- - |
{L_NO_LEADERS} | -|
{L_GROUP_DETAILS} + | {L_MARK} + |
{L_SELECT}: | +|
{L_GROUP_LEADER} | +|
{L_GROUP_MEMBER_DEFAULT} | -|
{member.GROUP_NAME} {member.GROUP_DESC} |
- - |
{L_NO_MEMBERS} | -{leader.GROUP_NAME} {leader.GROUP_DESC} |
+ + + + |
{L_NO_LEADERS} | +|
{L_GROUP_MEMBER_NOT_DEFAULT} | -|
{pending.GROUP_NAME} {pending.GROUP_DESC} |
- - |
{L_NO_PENDING} | -|
{L_GROUP_MEMBER_DEFAULT} | +|
{L_GROUP_PENDING} | -|
{nonmember.GROUP_NAME} {nonmember.GROUP_DESC} |
- - |
{L_NO_PENDING}<} | -{member.GROUP_NAME} {member.GROUP_DESC} |
+ + + + |
{L_NO_MEMBERS} | +|
- | |
{L_GROUP_MEMBER_NOT_DEFAULT} | +|
{pending.GROUP_NAME} {pending.GROUP_DESC} |
+ + |
{L_NO_PENDING} | +|
{L_GROUP_PENDING} | +|
{nonmember.GROUP_NAME} {nonmember.GROUP_DESC} |
+ + |
{L_NO_PENDING} | +|
+ |
{leader.GROUP_DESC}
{member.GROUP_DESC}
{pending.GROUP_DESC}
{nonmember.GROUP_DESC}