dimitry Опубликовано 14 Августа 2007 Жалоба Поделиться Опубликовано 14 Августа 2007 На данный момент в Управлении группами нельзя конкретной группе задать права на редактирование или удаление опросов в темах-опросах.Возможно ли это как-то сделать? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 14 Августа 2007 Жалоба Поделиться Опубликовано 14 Августа 2007 Попробуй поиграться назначением группы модераторами и раздачей прав при назначении. Наверняка можно как-то этим способом. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
dimitry Опубликовано 14 Августа 2007 Автор Жалоба Поделиться Опубликовано 14 Августа 2007 (изменено) Модификация выглядит так: ALTER TABLE `ibf_groups` ADD `g_edit_polls` tinyint(1) DEFAULT '0' AFTER `g_edit_cutoff`; ALTER TABLE `ibf_groups` ADD `g_delete_polls` tinyint(1) DEFAULT '0' AFTER `g_edit_cutoff`; ad_groups.php Найти: 'g_edit_posts' => $IN['g_edit_posts'], Ниже добавить: 'g_edit_polls' => $IN['g_edit_polls'], Найти: 'g_delete_own_posts' => $IN['g_delete_own_posts'], Ниже добавить: 'g_delete_polls' => $IN['g_delete_polls'], Найти: $ADMIN->html .= $SKIN->add_td_row( array( "<b>Разрешить редактирование своих сообщений?$guest_legend" , $SKIN->form_yes_no("g_edit_posts", $group['g_edit_posts'] ) ) ); Ниже добавить: $ADMIN->html .= $SKIN->add_td_row( array( "<b>Разрешить редактирование своих опросов?$guest_legend" , $SKIN->form_yes_no("g_edit_polls", $group['g_edit_polls'] ) ) ); Найти: $ADMIN->html .= $SKIN->add_td_row( array( "<b>Разрешить удаление своих сообщений?$guest_legend" , $SKIN->form_yes_no("g_delete_own_posts", $group['g_delete_own_posts'] ) ) ); Ниже добавить: $ADMIN->html .= $SKIN->add_td_row( array( "<b>Разрешить удаление своих опросов?$guest_legend" , $SKIN->form_yes_no("g_delete_polls", $group['g_delete_polls'] ) ) ); Открыть Topics.php Найти: if ($ibforums->member['g_is_supmod'] == 1) { $can_edit = 1; $can_delete = 1; } Ниже добавить: if ($ibforums->member['g_edit_polls'] == 1 and $ibforums->member['id'] == $this->topic['starter_id']) { $can_edit = 1; } if ($ibforums->member['g_delete_polls'] == 1 and $ibforums->member['id'] == $this->topic['starter_id']) { $can_delete = 1; } Modarate.php Найти: function poll_edit_do() { global $std, $ibforums, $DB, $print; $passed = 0; if ($ibforums->member['g_is_supmod'] == 1) { $passed = 1; } else if ($this->moderator['edit_post'] == 1) { $passed = 1; } else { $passed = 0; } Заменить на: function poll_edit_do() { global $std, $ibforums, $DB, $print; $passed = 0; if ($ibforums->member['g_is_supmod'] == 1) { $passed = 1; } else if ($this->moderator['edit_post'] == 1) { $passed = 1; } else if ($ibforums->member['g_edit_polls'] == 1 and $ibforums->member['id'] == $this->topic['starter_id']) { $passed = 1; } else { $passed = 0; } Найти: function poll_edit_form() { global $std, $ibforums, $DB, $print; $ibforums->vars['max_poll_choices'] = $ibforums->vars['max_poll_choices'] ? $ibforums->vars['max_poll_choices'] : 10; $passed = 0; if ($ibforums->member['g_is_supmod'] == 1) { $passed = 1; } else if ($this->moderator['edit_post'] == 1) { $passed = 1; } else { $passed = 0; } Заменить на: function poll_edit_form() { global $std, $ibforums, $DB, $print; $ibforums->vars['max_poll_choices'] = $ibforums->vars['max_poll_choices'] ? $ibforums->vars['max_poll_choices'] : 10; $passed = 0; if ($ibforums->member['g_is_supmod'] == 1) { $passed = 1; } else if ($this->moderator['edit_post'] == 1) { $passed = 1; } else if ( $ibforums->member['g_edit_polls'] == 1 and $ibforums->member['id'] == $this->topic['starter_id'] ) { $passed = 1; } else { $passed = 0; } Найти: function poll_delete_form() { global $std, $ibforums, $DB, $print; $passed = 0; if ($ibforums->member['g_is_supmod'] == 1) { $passed = 1; } else if ($this->moderator['delete_topic'] == 1) { $passed = 1; } else { $passed = 0; } Заменить на: function poll_delete_form() { global $std, $ibforums, $DB, $print; $passed = 0; if ($ibforums->member['g_is_supmod'] == 1) { $passed = 1; } else if ($this->moderator['delete_topic'] == 1) { $passed = 1; } else if ( $ibforums->member['g_delete_polls'] == 1 and $ibforums->member['id'] == $this->topic['starter_id'] ) { $passed = 1; } else { $passed = 0; } Найти: function poll_delete_do() { global $std, $ibforums, $DB, $print; $passed = 0; if ($ibforums->member['g_is_supmod'] == 1) { $passed = 1; } else if ($this->moderator['delete_topic'] == 1) { $passed = 1; } else { $passed = 0; } Заменить на: function poll_delete_do() { global $std, $ibforums, $DB, $print; $passed = 0; if ($ibforums->member['g_is_supmod'] == 1) { $passed = 1; } else if ($this->moderator['delete_topic'] == 1) { $passed = 1; } else if ( $ibforums->member['g_delete_polls'] == 1 and $ibforums->member['id'] == $this->topic['starter_id'] ) { $passed = 1; } else { $passed = 0; } Изменено 21 Августа 2007 пользователем dimitry Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 15 Августа 2007 Жалоба Поделиться Опубликовано 15 Августа 2007 Вот и прошу Вашей помощи.Баш на баш пойдет? Я вроде бы просил не очень большую услугу...А то грустно играть в одни ворота. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 15 Августа 2007 Жалоба Поделиться Опубликовано 15 Августа 2007 Повторяться не вижу смысла.Если топикстартер создаёт топики на нескольких форумах, пусть послеловательно их и обходит.. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
dimitry Опубликовано 21 Августа 2007 Автор Жалоба Поделиться Опубликовано 21 Августа 2007 SongБлагодарю за помощь, мод работает - http://www.ibresource.ru/forums/index.php?...st&p=278232 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.