Zhezl Опубликовано 16 Января 2006 Жалоба Поделиться Опубликовано 16 Января 2006 (изменено) Видел подобную тему про 1.2.Так вот, хотлеось бы, чтобы при отбирании права постинга юзер помещался в группу "Забаненные", а по истечении времени бана, возвращался в предыдущую группу. Выполняем SQL-запрос.ALTER TABLE ibf_members ADD COLUMN mgroup_prev integer; файл. warn.phpИщемclass warn { var $output = ""; var $topic = array(); var $forum = array(); Добавляем после //ban group var $grp_id = 5; var $grp_id_prev = ""; //ban group Ищемif ( $warn_level < intval($this->ipsclass->vars['warn_min']) ) { $warn_level = 0; } Добавляем после //group_ban //ban - move to group 5 and backing up the current group if (($restrict_post != 0) or ($restrict_post != null )) { $grp_id = 5; $grp_id_prev = $this->warn_member['mgroup']; } //unban - move to previous group, if no ban, leave current. if (($restrict_post == 0) or ($restrict_post == null )) { $grp_id = $this->warn_member['mgroup']; //$grp_id_prev = null; if (($this->warn_member['mgroup_prev'] != null) and ($this->warn_member['mgroup_prev'] != '0')) { $grp_id = $this->warn_member['mgroup_prev']; } } //group_ban. in next sectoion - 'mgroup', 'mgroup_prev' added Ищем $this->ipsclass->DB->do_update( 'members', array ( 'mod_posts' => $mod_queue, 'restrict_post' => $restrict_post, 'temp_ban' => $susp, Заменяем на. $this->ipsclass->DB->do_update( 'members', array ( 'mod_posts' => $mod_queue, 'restrict_post' => $restrict_post, 'temp_ban' => $susp, 'mgroup' => $grp_id, 'mgroup_prev' => $grp_id_prev, post.phpищем if ( $this->ipsclass->member['restrict_post'] == 1 ) { $this->ipsclass->Error( array( LEVEL => 1, MSG => 'posting_off') ); }И удаляем(или комментируем) Ищем //----------------------------------------- // Update this member's profile //----------------------------------------- $this->ipsclass->DB->simple_construct( array( 'update' => 'members', 'set' => 'restrict_post=0', 'where' => "id=".intval($this->ipsclass->member['id']) ) ); $this->ipsclass->DB->simple_exec();Заменяем на //group ban //----------------------------------------- // Update this member's profile //----------------------------------------- $this->ipsclass->DB->simple_construct( array( 'update' => 'members', 'set' => 'restrict_post=0, mgroup='.$this->ipsclass->member['mgroup_prev'], 'where' => "id=".intval($this->ipsclass->member['id']) ) ); $this->ipsclass->DB->simple_exec();//group ban Ищем else { $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'posting_off_susp', 'EXTRA' => $this->ipsclass->get_date($post_arr['date_end'], 'LONG') ) ); }И удаляем. class_session.php Ищем $this->ipsclass->DB->build_query( array( 'select' => "id, name, mgroup, member_login_key, email, restrict_post, view_sigs, view_avs, view_pop, view_img, auto_track, mod_posts, language, skin, new_msg, show_popup, msg_total, time_offset, posts, joined, last_post, subs_pkg_chosen, ignored_users, login_anonymous, last_visit, last_activity, dst_in_use, view_prefs, org_perm_id, mgroup_others, temp_ban, sub_end, has_blog, members_markers, members_editor_choice, members_auto_dst, members_display_name, members_created_remote, members_cache, members_disable_pm", 'from' => 'members', 'where' => 'id='.$member_id ) ); Заменяем на $this->ipsclass->DB->build_query( array( 'select' => "*", 'from' => 'members', 'where' => 'id='.$member_id ) ); Готово. Итак, отбирая права постинга, мы помещаем юзера в группу "Забаненные", у которой настроены права так, как Вам хочется. Изменено 17 Января 2006 пользователем Zhezl Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Zhezl Опубликовано 17 Января 2006 Автор Жалоба Поделиться Опубликовано 17 Января 2006 Модераторы, переместите в "Модификации в разрабртке", пожалуйста. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Zhezl Опубликовано 17 Января 2006 Автор Жалоба Поделиться Опубликовано 17 Января 2006 Усё работает. Можете удалить оба опста. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Westarea Опубликовано 29 Января 2006 Жалоба Поделиться Опубликовано 29 Января 2006 Не могу понять, это для какой версии? Я не могу найти вот это: if ( $warn_level < intval($this->ipsclass->vars['warn_min']) ) { $warn_level = 0; } Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Aleks Опубликовано 29 Января 2006 Жалоба Поделиться Опубликовано 29 Января 2006 если $this->ipsclass то точно для двухи Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Westarea Опубликовано 30 Января 2006 Жалоба Поделиться Опубликовано 30 Января 2006 А для 1.3 есть? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Destruction Опубликовано 30 Января 2006 Жалоба Поделиться Опубликовано 30 Января 2006 если $this->ipsclass то точно для двухиТочнее для 2.1 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
winux Опубликовано 7 Февраля 2006 Жалоба Поделиться Опубликовано 7 Февраля 2006 А для 2.0.х будет? Чем отличается установка? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Zhezl Опубликовано 20 Февраля 2006 Автор Жалоба Поделиться Опубликовано 20 Февраля 2006 Это писалось для 2.1.х.Для других версий я писать не буду, ибо их не имею, но вы можете написать по аналогии. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dimm-skY Опубликовано 15 Марта 2006 Жалоба Поделиться Опубликовано 15 Марта 2006 Странно, но у меня не работает. Версия форума 2.1.4.При бане юзер как был в своей группе, так в ней и остаётся. И бан перестал автоматически сниматься. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Zhezl Опубликовано 15 Марта 2006 Автор Жалоба Поделиться Опубликовано 15 Марта 2006 Это настроено не на бан, а на отбирание права постинга. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
gLad1ators Опубликовано 20 Октября 2009 Жалоба Поделиться Опубликовано 20 Октября 2009 Где это все найти?И подойдет ли для версии 2.2.2? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
gLad1ators Опубликовано 23 Октября 2009 Жалоба Поделиться Опубликовано 23 Октября 2009 Где это все найти?И подойдет ли для версии 2.2.2?Подскажите.. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.