Digy Опубликовано 25 Марта 2007 Жалоба Поделиться Опубликовано 25 Марта 2007 Как скрыть посты определенной группы пользователей (например "Заблокированные") ото всех, кроме администраторов? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Song Опубликовано 25 Марта 2007 Жалоба Поделиться Опубликовано 25 Марта 2007 Поставить каждому премодерацию сообщений. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Digy Опубликовано 25 Марта 2007 Автор Жалоба Поделиться Опубликовано 25 Марта 2007 Поставить каждому премодерацию сообщений. Нет, имеется ввиду другая идея.Если пользователь попадает в группу "Заблокированные", то все его посты, которые он написал ранее, становятся скрытыми для остальных посетителей форума (кроме администрации, конечно).Само собой, писать он уже ничего не может ввиду блокировки аккаунта. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Song Опубликовано 25 Марта 2007 Жалоба Поделиться Опубликовано 25 Марта 2007 я назвал стандартную возможность, которая приближённо подходит.Не нравится, напишите сами то что вам нужно. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Jax Опубликовано 25 Марта 2007 Жалоба Поделиться Опубликовано 25 Марта 2007 Song, чего злой такой? Digy, если php знаете нормально, могу предложить идею: в ibf_posts добавляем новую колонку, ставим ей значение "0". Далее (если я правильно мыслю), выполняете запрос и обновляете ibf_posts, где ID юзера==ID забаненного, и "0", меняем, к примеру на "1". В сорсах пишем условие, что если у поста значение "1", остальных группы, кроме админа постов не видят. Может это и деревянный метод, но все равно работать будет. Ну или как сказал Сонг, только опят-таки, надо запросом всего его посты поставить в премодерацию. Но это конечно не прикольно будет Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Sannis Опубликовано 25 Марта 2007 Жалоба Поделиться Опубликовано 25 Марта 2007 Зато вариант Сонга проще. Ибо во втором случае прийдётся ещё следить как-то за темами, которые заблокированные открывали... Ибо скрывать их нехорошо, а тогда надо чтоб форум делал вид что тема начинается со второго поста... и ещё туева куча таких вот мелочей... Для реализации второго метода достаточно сделать слудующее:в файле ./sources/lib/func_topic_linear.php после $queued_query_bit = ' and queued=0'; if ( $this->ipsclass->can_queue_posts($this->topic['forum_id']) ) { $queued_query_bit = ''; if ( $this->ipsclass->input['modfilter'] == 'invisible_posts' ) { $queued_query_bit = ' and queued=1'; } }вставить код, получающий список всех юзеров из нужной группы, далее формируем из него строку вида "(13, 54, 345)" и в $queued_query_bit дописываем "and author_id not in (13, 54, 345)". Аналогично в файле ./sources/lib/func_topic_threaded.php. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Digy Опубликовано 25 Марта 2007 Автор Жалоба Поделиться Опубликовано 25 Марта 2007 (изменено) Спасибо, вариант с доп колонкой пока не радует. Куда засунуть "UPDATE ibf_posts SET queued=1 WHERE ...", чтобы этот запрос выполнялся при перемещении юзера в группу заблокированных? Изменено 25 Марта 2007 пользователем Digy Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Вопрос
Digy
Ссылка на комментарий
Поделиться на других сайтах
6 ответов на этот вопрос
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.