From 82960dd8e707ff114d32ff5b714f09314f6a7c39 Mon Sep 17 00:00:00 2001 From: Dark Nightmare Date: Sat, 2 Aug 2014 23:32:19 +0600 Subject: [PATCH] R593 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit + Добавлена проверка прав в ajax + Добавлена возможность указать релиз группу при создании группы в администраторской панели + Исправленна работа bbcode + Исправлены мелкие недочеты Signed-off-by: Dark Nightmare --- upload/admin/admin_groups.php | 5 +++ upload/ajax/edit_group_profile.php | 7 ++-- upload/ajax/html/jumpbox_guest.html | 5 --- upload/ajax/html/jumpbox_user.html | 5 --- upload/group_config.php | 2 +- upload/groupcp.php | 24 +++++++++----- upload/language/en/main.php | 2 ++ upload/language/ru/main.php | 2 ++ upload/language/ua/main.php | 2 ++ upload/templates/admin/admin_groups.tpl | 7 ++++ upload/templates/default/group_config.tpl | 2 +- upload/templates/default/groupcp.tpl | 40 ++++++++++++++--------- upload/triggers/cron_allowed | 0 13 files changed, 64 insertions(+), 39 deletions(-) delete mode 100644 upload/ajax/html/jumpbox_guest.html delete mode 100644 upload/ajax/html/jumpbox_user.html delete mode 100644 upload/triggers/cron_allowed 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/ajax/html/jumpbox_guest.html b/upload/ajax/html/jumpbox_guest.html deleted file mode 100644 index e25cf03e0..000000000 --- a/upload/ajax/html/jumpbox_guest.html +++ /dev/null @@ -1,5 +0,0 @@ - \ No newline at end of file diff --git a/upload/ajax/html/jumpbox_user.html b/upload/ajax/html/jumpbox_user.html deleted file mode 100644 index e25cf03e0..000000000 --- a/upload/ajax/html/jumpbox_user.html +++ /dev/null @@ -1,5 +0,0 @@ - \ No newline at end of file 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 .= '
  • '. $text .'
  • '; - $options .= '