diff --git a/upload/admin/admin_groups.php b/upload/admin/admin_groups.php index 30b819a04..81c3be58a 100644 --- a/upload/admin/admin_groups.php +++ b/upload/admin/admin_groups.php @@ -30,6 +30,7 @@ if (!empty($_POST['edit']) || !empty($_POST['new'])) 'group_moderator' => $row['group_moderator'], 'group_mod_name' => $row['moderator_name'], 'group_type' => $row['group_type'], + 'release_group' => $row['release_group'], ); $mode = 'editgroup'; $template->assign_block_vars('group_edit', array()); @@ -42,6 +43,7 @@ if (!empty($_POST['edit']) || !empty($_POST['new'])) 'group_moderator' => '', 'group_mod_name' => '', 'group_type' => GROUP_OPEN, + 'release_group' => 0, ); $mode = 'newgroup'; } @@ -66,6 +68,7 @@ if (!empty($_POST['edit']) || !empty($_POST['new'])) 'S_GROUP_OPEN_CHECKED' => ($group_info['group_type'] == GROUP_OPEN) ? HTML_CHECKED : '', 'S_GROUP_CLOSED_CHECKED' => ($group_info['group_type'] == GROUP_CLOSED) ? HTML_CHECKED : '', 'S_GROUP_HIDDEN_CHECKED' => ($group_info['group_type'] == GROUP_HIDDEN ) ? HTML_CHECKED : '', + 'RELEASE_GROUP' => ($group_info['release_group']) ? true : false, 'S_GROUP_ACTION' => "admin_groups.php", 'S_HIDDEN_FIELDS' => $s_hidden_fields, )); @@ -90,6 +93,7 @@ else if (!empty($_POST['group_update'])) else { $group_type = isset($_POST['group_type']) ? intval($_POST['group_type']) : GROUP_OPEN; + $release_group = isset($_POST['release_group']) ? intval($_POST['release_group']) : 0; $group_name = isset($_POST['group_name']) ? trim($_POST['group_name']) : ''; $group_desc = isset($_POST['group_description']) ? trim($_POST['group_description']) : ''; @@ -112,6 +116,7 @@ else if (!empty($_POST['group_update'])) $sql_ary = array( 'group_type' => (int) $group_type, + 'release_group' => (int) $release_group, 'group_name' => (string) $group_name, 'group_description' => (string) $group_desc, 'group_moderator' => (int) $group_moderator, diff --git a/upload/ajax/edit_group_profile.php b/upload/ajax/edit_group_profile.php index 7affe0a48..1b6356d04 100644 --- a/upload/ajax/edit_group_profile.php +++ b/upload/ajax/edit_group_profile.php @@ -2,7 +2,7 @@ if (!defined('IN_AJAX')) die(basename(__FILE__)); -global $bb_cfg, $lang; +global $bb_cfg, $userdata, $lang; if (!$group_id = intval($this->request['group_id']) OR !$group_info = get_group_data($group_id)) { @@ -15,7 +15,10 @@ if (!$mode = (string) $this->request['mode']) $value = $this->request['value'] = (string) (isset($this->request['value'])) ? $this->request['value'] : 0; -// TODO Check for permissions +if (!IS_ADMIN && $userdata['user_id'] != $group_info['group_moderator']) +{ + $this->ajax_die($lang['ONLY_FOR_MOD']); +} switch ($mode) { diff --git a/upload/group_config.php b/upload/group_config.php index fcab87f7b..45a44c030 100644 --- a/upload/group_config.php +++ b/upload/group_config.php @@ -71,7 +71,7 @@ if ($is_moderator) $template->set_filenames(array('body' => 'group_config.tpl')); - $template->assign_vars(array('PAGE_TITLE' => 'Настройка группы')); + $template->assign_vars(array('PAGE_TITLE' => $lang['GROUP_CONFIGURATION'])); require(PAGE_HEADER); diff --git a/upload/groupcp.php b/upload/groupcp.php index e9fd3fb10..f108668c6 100644 --- a/upload/groupcp.php +++ b/upload/groupcp.php @@ -73,7 +73,7 @@ if (!$group_id) $sql = " SELECT - g.group_name, g.group_description, g.group_id, g.group_type, + g.group_name, g.group_description, g.group_id, g.group_type, g.release_group, IF(ug.user_id IS NOT NULL, IF(ug.user_pending = 1, $pending, $member), 0) AS membership, g.group_moderator, u.username AS moderator_name, IF(g.group_moderator = ug.user_id, 1, 0) AS is_group_mod, @@ -130,7 +130,7 @@ if (!$group_id) continue; } - $data = array('id' => $row['group_id'], 'm' => ($row['members'] - $row['candidates']), 'c' => $row['candidates']); + $data = array('id' => $row['group_id'], 'm' => ($row['members'] - $row['candidates']), 'c' => $row['candidates'], 'rg' => $row['release_group']); $groups[$type][$row['group_name']] = $data; } @@ -140,15 +140,17 @@ if (!$group_id) global $lang; $options = ''; + foreach ($params as $name => $data) { $text = htmlCHR(str_short(rtrim($name), HTML_SELECT_MAX_LENGTH)); - $members = ($data['m']) ? $lang['MEMBERS_IN_GROUP'] .': '. $data['m'] : $lang['NO_GROUP_MEMBERS']; + $members = ($data['m']) ? $lang['MEMBERS_IN_GROUP'] .': '. $data['m'] : $lang['NO_GROUP_MEMBERS']; $candidates = ($data['c']) ? $lang['PENDING_MEMBERS'] .': '. $data['c'] : $lang['NO_PENDING_GROUP_MEMBERS']; - $options .= '
- +
diff --git a/upload/templates/default/groupcp.tpl b/upload/templates/default/groupcp.tpl index 59feca4ad..5fe2cd091 100644 --- a/upload/templates/default/groupcp.tpl +++ b/upload/templates/default/groupcp.tpl @@ -56,15 +56,21 @@{L_SELECT} | +# | +{L_AVATAR} | {L_USERNAME} | {L_PM} | {L_EMAIL} | @@ -207,12 +214,13 @@{L_WEBSITE} | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
{L_PENDING_MEMBERS} | +{L_PENDING_MEMBERS} | |||||||||||||||
+ | + | {pending.AVATAR_IMG} | {pending.USER} | {pending.PM} | {pending.EMAIL} | @@ -224,7 +232,7 @@|||||||||||
+ |