gunnar Опубликовано 17 Марта 2008 Жалоба Поделиться Опубликовано 17 Марта 2008 Добрый вечер. Сейчас сообщения удаляются поэлементно, т.е. если модератор удаляет по 1-му сообщению - и в Корзине юрба одинаковых "тем", даже если скопом, все равно в другой раз с той же темы - опять в "корзине" новая тема.Хотелось бы как в моде для 1.3.1 - удаляется сообщение и в корзине оно попадает в ту же "тему" (т.е. сообщения, удаленные из одной и той же темы в разное время, попадают и в одну корзиночную тему). Затем я пересматриваю Корзину по темам и удаляю. Еще хотелось бы видеть такую "фишку", как бан по IP сделавшего сообщение, т.е. удаляю сообщение и одновременно могу внести адрес в бан (поскольку копировать - вставить - уже больше действий). Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
r1der Опубликовано 1 Апреля 2008 Жалоба Поделиться Опубликовано 1 Апреля 2008 Такая же проблема. Есть решение? Ничего найти не могу. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
gunnar Опубликовано 1 Апреля 2008 Автор Жалоба Поделиться Опубликовано 1 Апреля 2008 (просьба закрыть тему в разделе "другие модификации")Я думаю, найдется тот, кто сможет такое наваять! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
r1der Опубликовано 2 Апреля 2008 Жалоба Поделиться Опубликовано 2 Апреля 2008 Сделал, оцените, протестируйте. Работает пока только для удаления одного поста. Ищем в sources/action_public/moderate.php Строку: if ( $this->trash_forum and $this->trash_forum != $this->forum['id'] ) { После вставляем: // тут не забываем повешать индексы на description и forum_id, если база слишком уж большая. $this->ipsclass->DB->simple_construct( array( 'select' => 'tid, starter_id, start_date', 'from' => 'topics', 'where' => "description LIKE 'От темы с ID: {$this->topic['tid']}' and forum_id={$this->trash_forum}", 'order' => 'start_date DESC', 'limit' => array( 0,1 ) ) ); $this->ipsclass->DB->simple_exec(); // echo "description LIKE 'От темы с ID:{$this->topic['tid']}' and forum_id={$this->trash_forum}"; if ( $tmp = $this->ipsclass->DB->fetch_row() ) { // перед удалением нам надо проверить создан ли топик в архивном форуме $this->trash_forum, // если создан - то переносим пост туда, если нет - то создаем новый топик. Переносим в топик с id = $tmp['tid'] // выбираем пост и переписываем ему топик $this->ipsclass->DB->simple_construct( array( 'select' => 'pid, author_id, post_date, topic_id', 'from' => 'posts', 'where' => "topic_id={$this->topic['tid']} and pid={$this->ipsclass->input['p']}" ) ); $this->ipsclass->DB->simple_exec(); if ( $post_to_del = $this->ipsclass->DB->fetch_row() ){ $this->ipsclass->DB->simple_exec_query( array( 'update' => 'posts', 'set' => "topic_id={$tmp['tid']}", 'where' => 'pid='.$post_to_del['pid'] ) ); } }else{ Далее ищем $this->trash_inuse = 0; После всталяем } todo: 1. сделать для мультимодерации2. добавить обновление кэша топика из которого сообщение было удалено.3. ... ps форум v2.3.3 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
gunnar Опубликовано 2 Апреля 2008 Автор Жалоба Поделиться Опубликовано 2 Апреля 2008 сделать для мультимодерацииСобственно, зачем? Перед мультимодерацией можно отключать корзину, удалять и включать. У нас я, например, мультимодерацию разрешил Админам, т.е. себе Впрочем, наверное, кому-нидь и понадобится! добавить обновление кэша топика из которого сообщение было удалено.Хм, а этого нет? Т.е. сообщение после удаления останется в оригинальном топике? Эт нехорошо... Подозрительно простой "код" Кто-то проверял уже? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 2 Апреля 2008 Жалоба Поделиться Опубликовано 2 Апреля 2008 Работоспособный код, могу и без проверки сказать. Автор имел в виду обновить тот топик в корзине, куда сообщение попадёт, а то оно попадёт туда, а статистика того топика не изменится. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
r1der Опубликовано 3 Апреля 2008 Жалоба Поделиться Опубликовано 3 Апреля 2008 Работоспособный код, могу и без проверки сказать. Автор имел в виду обновить тот топик в корзине, куда сообщение попадёт, а то оно попадёт туда, а статистика того топика не изменится. Да, я имел ввиду что счетчики не сразу обноляется, и это не критично ps Включил у себя на форуме, корзина преобрела приятный вид Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
gunnar Опубликовано 3 Апреля 2008 Автор Жалоба Поделиться Опубликовано 3 Апреля 2008 Да уж, оказывается все тривиально Только просто кому-то заинтересованному надо было взяться Проверил на своем втором форуме - все ОК. Спасибо! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
gunnar Опубликовано 5 Апреля 2008 Автор Жалоба Поделиться Опубликовано 5 Апреля 2008 Да уж, скоро и сам начну моды писать В общем, как я понял, написано для function delete_post()А вот для function multi_delete_post() и function delete_topic() пока еще нет. Для второго вряд ли нужно, а первое, как я понимаю - удаление нескольких сообщений в теме. В принципе, тоже нужно в мод добавить. Но вот что не есть хорошо - в корзине число сообщений в "теме" 0 Внутри при этом хоть 5, хоть 10 сообщений. Удалял с установленным модом "комплексная корзина". Я понимаю, что это именно то, что Олег сказал выше.Впрочем, опять же это не "критично". Главное, что по 1-му сообщению реально работает! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 5 Апреля 2008 Жалоба Поделиться Опубликовано 5 Апреля 2008 Если дойду завтра до дому вечером — напишу. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Grandsire Опубликовано 7 Апреля 2008 Жалоба Поделиться Опубликовано 7 Апреля 2008 (изменено) Согласен -для мультимодерации сообщений обязательно нужно сделать. Еще что заметил,что вот такие одиночно рассыпанные сообщения в Корзине восстановить в тему не удается-пишет Ошибка...А если их в корзине обьединить, то тогда по одиночке их можно методом переноса вернуть назад.Создается впечатление, что движок одиночное сообщение воспринимает со статусом темы и не разрешает воткнуть в одноименную живую тему.Не уверен..может это баг какой-то.Может кто попробует восстановить одиночно удаленный пост назад в свою тему? Изменено 7 Апреля 2008 пользователем Grandsire Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Док Опубликовано 8 Апреля 2008 Жалоба Поделиться Опубликовано 8 Апреля 2008 Я востанавливал у себя,путем обьединения,нормально все востанавливаеться Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 13 Апреля 2008 Жалоба Поделиться Опубликовано 13 Апреля 2008 Так, для удаление сообщения, нескольких сообщений и одной темы я сделал... Но: когда обычно использую удаление сразу нескольких тем? Обычно ж когда хотят их насовсем удалить. Нужно ли тогда для этого делать "удобную" корзину? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Grandsire Опубликовано 17 Апреля 2008 Жалоба Поделиться Опубликовано 17 Апреля 2008 Так, для удаление сообщения, нескольких сообщений и одной темы я сделал... Но: когда обычно использую удаление сразу нескольких тем? Обычно ж когда хотят их насовсем удалить. Нужно ли тогда для этого делать "удобную" корзину? Возможна такая ситуация,когда из этих нескольких тем одну допустим надо подержать какое-то время в корзине...Вещь-доки бывают нужны Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
r1der Опубликовано 18 Апреля 2008 Жалоба Поделиться Опубликовано 18 Апреля 2008 Я хочу сделать кнопку "восстановить", которая появляется только в корзине, чтобы можно было сразу при просмотре корзины восстановить сообшение/я в один клик. Или лучше это делать средствами обьединения? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
gunnar Опубликовано 18 Апреля 2008 Автор Жалоба Поделиться Опубликовано 18 Апреля 2008 Но: когда обычно использую удаление сразу нескольких тем? Обычно ж когда хотят их насовсем удалить. Нужно ли тогда для этого делать "удобную" корзину?Я думаю, что мультимодерацию вообще должен делать один специально выделенный для этого человек, в идеале сам Админ . Я не разрешаю удалять темы модераторам + запретил мультимодерацию им. А удалить несколько тем случайно, тем более если сделано специалистом, малореально... Я считаю, что не нужно это добавлять в "корзину". Я хочу сделать кнопку "восстановить", которая появляется только в корзине, чтобы можно было сразу при просмотре корзины восстановить сообшение/я в один клик. Или лучше это делать средствами обьединения?Интересно желание все решать кнопками Что должна делать оная кнопка? Восстанавливать всю тему? Тогда опять же есть стандартное средство "объединения". А если восстанавливать выбранные сообщения, то в правом всплывающем списке резонно добавить опцию "восстановить выбранные сообщения". P.S. Sannis, добавил тему в разделе, если хошь разрабатывать - дерзай, а если времени мало, то может кто еще возьмется, а то наш форум уже плачет от изобилия секс-спаммеров Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 18 Апреля 2008 Жалоба Поделиться Опубликовано 18 Апреля 2008 P.S. Sannis, добавил тему в разделе, если хошь разрабатывать - дерзай, а если времени мало, то может кто еще возьмется, а то наш форум уже плачет от изобилия секс-спаммеров Тяжёлый был день, не совсем про тему понял. Но если что, то я темку с модом создал: Улучшенная корзина. Насчёт опции "восстановить" подумаю как время будет, идея интересная Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
gunnar Опубликовано 18 Апреля 2008 Автор Жалоба Поделиться Опубликовано 18 Апреля 2008 Тяжёлый был день, не совсем про тему понял. Но если что, то я темку с модом создал: Насчёт опции "восстановить" подумаю как время будет, идея интересная Тему с модом видел, отписался А я про тему:Анти спам (флуд) мод Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Grandsire Опубликовано 17 Мая 2008 Жалоба Поделиться Опубликовано 17 Мая 2008 Мы на форуме сейчас решили просто все с Корзиной.По принципу-нЕчего там хранить что-либо и раз в несколько дней просто в ноль вычищаем ее и все.И никаких вопросов не возникает и счетчик сообщений пользователей стабилен по мере появления "нормальных" не флудных сообщений. А вот на предмет сохранения удаленного,но возможно когда-то и понадобившегося в жизни(мало ли какой разбор полетов или еще что-либо подобное,то вполне можно сделать спец-форум открытый только одной маске пользователей и туда из Корзины и складывать то что "на всякий случай". Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.