Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

вывод сообщений начиная с указанного и кое-что еще...

Идеи для расширения функциональности phpBB 2.0.x
Аватара пользователя
sunturner
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 1 месяц
Откуда: Москва

вывод сообщений начиная с указанного и кое-что еще...

Сообщение sunturner »

Собираюсь писать мод, присваивающий каждому сообщению свой ID для возможности перехода НА СООБЩЕНИЕ через адресную строку браузера.
Проблема в том, что часто хочется сослаться на конкретное сообщение, а не на всю тему.
Выглядеть это должно примерно так: "ссылка на тему"+"номер сообщения в теме".
При переходе по такой ссылке показывается блок сообщений, в котором указанное сообщение - первое.

Подобный подход открывает и другие перспективы - например, "сворачивание" нескольких сообщений в теме: например, в теме в течение нескольких сообщений подряд происходит диалог на определенную узкую тему. Хотелось бы, чтобы его можно было "свернуть" - указать первое сообщение и сколько мы сворачиваем, нажать "свернуть" - и теперь вместо десяти сообщений мы видим первое свернутое с кнопочкой "развернуть".
Иногда это более удобно, чем переносить сообщения в отдельную тему, да и с точки зрения защиты от ботов это удобно.

Другая появляющаяся удобная возможность - "связывание" тем: модератор видит, что в каком-то сообщении идет обращение к информации из другой темы и ставит пометку "перейти к связанной теме":
теперь пользователи при просмотре темы видят справа от некоторых сообщений иконку "перейти" и могут переходить в связанные темы (причем как раз к тем сообщениям, которые нужны - представьте себе такую опцию в Этом форуме! Вместо того, чтобы просматривать 24-страничную тему в поисках маленького фикса, мы СРАЗУ по ссылке из другой темы попадаем на сообщение с фиксом!

И, наконец, самая "вкусная" возможность - возможность создания "виртуальных" тем.
Допустим, на форуме про продукты Микрософта в разных темах появлялись сообщения и диалоги о Microsoft Windows Server 2003.
При этом просто переносить эти сообщения в отдельную тему не очень хотелось бы - они отвечают названиям тем, в которых были написаны.
При возможности ссылок на фрагменты троп ("номер сообщения в тропе+количество последующих сообщений") мы сможем создать "виртуальную" тему - вместо последовательности сообщений в этой теме будет ПОСЛЕДОВАТЕЛЬНОСТЬ ССЫЛОК НА ФРАГМЕНТЫ ТЕМ!
Причем выводиться эти "клоны" будут так же, как и обычные тропы - то есть движок форума будет САМ находить в базе фрагменты, на которые мы ссылаемся, и создавать "обычный" лист сообщений (возможно, с указанием на темы, из которых сообщения "позаимствованы").

Если такого мода нет, его НЕОБХОДИМО создать!

П.С. технически я представляю себе, как эту идею можно реализовать. Но я недостаточно хорошо разбираюсь в написании БЕЗОПАСНОГО PHP-кода.
Если кого-либо из уважаемых кодеров предложенное выше заинтересует, с удовольствием вступлю в переписку - приму любую помощь!
Последний раз редактировалось sunturner 23.05.2006 20:38, всего редактировалось 2 раза.
С уважением, Михаил Кожурин
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 18 лет 11 месяцев
Благодарил (а): 20 раз
Поблагодарили: 30 раз
Забанен: Бессрочно

Сообщение MAzZY »

http://www.phpbbguru.net/community/view ... 7872#87872 - а это что, если не ИД сообщения?
Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Стаж: 18 лет 11 месяцев
Откуда: tallinn.ee

Сообщение Romy »

MAzZY писал(а):а это что?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
sunturner
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 1 месяц
Откуда: Москва

Сообщение sunturner »

Спасибо, как-то не подумал...
но ведь это не совсем то, о чем я говорил!
Нет, конечно, это тоже ID (у каждого сообщения уникальный).
Но для реализации того, что мне нужно, все равно придется писать что-то вроде viewposts.php

Добавлено спустя 2 минуты 55 секунд:

"Вместо того, чтобы просматривать 24-страничную тему в поисках маленького фикса, мы СРАЗУ по ссылке из другой темы попадаем на сообщение с фиксом!" - да, так можно. А чтобы и наоборот? (идея в том, что ссылки двунаправленны - если ставим в одной теме на сообщение в другой, то автоматически появляется ссылка из другой на первую - я же говорю, "связанные" темы!)

Добавлено спустя 7 минут 43 секунды:

для меня это не просто блажь!
заказчик (профессор) хочет, чтобы линии обсуждений могли пересекаться, сливаться и расходиться.
Если "расхождение" пожет быть реализовано системой подфорумов, то как быть со "сливанием" (начинаются две разные темы - например, в разных форумах - а потом "волей модератора", начиная с какого-то сообщения, сливаются в одну, то есть на форуме существуют две темы с разным началом (допустим, первые 10 сообщений) и одним концом).
И как быть с пересечением? (то есть если какое-то сообщение может быть отнесено к двум темам, то модератор может "включить" это сообщение как ответ на две темы, и при просмотре обеих тем это сообщение будет в листе).
Короче говоря, идея близка к википедии, но на базе форума...

Добавлено спустя 56 секунд:

понял! что-то вроде "мод подсообщений"
С уважением, Михаил Кожурин
Аватара пользователя
Nemo1987
phpBB 2.0.7
Сообщения: 560
Стаж: 18 лет 2 месяца

Сообщение Nemo1987 »

Типа что бы только это соощение отображалось???
Аватара пользователя
edgar
phpBB 2.0.13
Сообщения: 917
Стаж: 18 лет 9 месяцев
Откуда: с Луны свалил...

Сообщение edgar »

Так часто про это спрашивают (про ссылку на пост). А всё потому, что ссылка сделана так, что непонятно, что это ссылка на пост.
Имхо надо ее чуть улучшить, чтобы все понимали, что это ссылка на конкретный пост. Так щас и сделаю. Прошу прощения за офф.

sunturner
Имхо очень интересная идея про виртуальную тему. Зачем остальное не совсем понял. Сворачивание как в IPB что ли? А связанные темы как в вобле? Только всё это надо прописать вручную? (то есть - модеры пишут)
Вот если вы виртуальную тему реализуете, это было бы классно.
:)
Последний раз редактировалось edgar 23.05.2006 16:59, всего редактировалось 1 раз.
Аватара пользователя
sunturner
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 1 месяц
Откуда: Москва

Сообщение sunturner »

2Nemo1987:

либо только это сообщение, либо это сообщение и указанное количество последующих, либо (!) список указанных сообщений (я назвал это "виртуальной темой").
Вся фишка в том, чтобы можно было создавать "собственные маршруты" по форуму - и не только линейно, но и пересекая разные темы.
Например, виртуальная тема "самые полезные сообщения форума", в которой в виде стандартного листа сообщений выводятся сообщения из разных тем форума, которые модератор посчитал самыми полезными.

Добавлено спустя 8 минут 8 секунд:

про "мод подсообщений":
что-то вроде ЖЖ-шного "Reply to this" в поле каждого сообщения - то есть на каждом сообщении может произойти развилка на две темы.

Добавлено спустя 7 минут 52 секунды:
edgar писал(а):Только всё это надо прописать вручную? (то есть - модеры пишут)
не очень понял про "прописать вручную"...
ну, в целом идея такая: у нас есть очень длинная тема и модер хочет облегчить ее читабельность. Он сворачивает сообщения, которые можно свернуть, в первом из сворачиваемых сообщений пишет название сворачиваемой "подтемы" (например, сворачивается диалог о том, какие слова больше подходят для русификации обсуждаемого мода - модер сворачивает диалог и ставит пометку вроде "Как лучше русифицировать этот мод?"). Теперь при просмотре темы мы видим первое из сворачиваемых сообщений с пометкой "Свернуто: "Как лучше русифицировать этот мод?"", сразу после этого сообщения идет следующее сообщение после последнего сворачиваемого.
При нажатии на "Как лучше русифицировать этот мод?" свернутые сообщения разворачиваются.
На моем форуме это было бы очень полезно - там каждое сообщение длиной тысяч в пять символов.
С уважением, Михаил Кожурин
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 1 месяц

Сообщение quazi »

sunturner писал(а):заказчик (профессор) хочет, чтобы линии обсуждений могли пересекаться, сливаться и расходиться.
я бы посоветовал вам искать другой форум, который реализует идею нитей (threads), когда тема может развиваться во многих направлениях.
Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Стаж: 18 лет 11 месяцев
Откуда: tallinn.ee

Сообщение Romy »

edgar писал(а):ссылка сделана так, что непонятно, что это ссылка на пост
да вроде всё прекрасно понятно...
Аватара пользователя
sunturner
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 1 месяц
Откуда: Москва

Сообщение sunturner »

quazi писал(а):я бы посоветовал вам искать другой форум
будь моя воля, я бы вообще использовал технологию вики (она куда больше отвечает запросам Профессора (заказчика);
проблема в том, что их форуму уже больше года и там накопилось очень много информации - не представляю себе, как я смогу перенести базу на новый движок.
С другой стороны, phpbb-форум хорош тем, что им практически все умеют пользоваться. Половина моих посетителей - люди старше 45 лет (всякие ученые). Для них будет сложно освоить новую технологию "ввода информации в форум".

И потом, почему бы не реализовать эти идеи на движке phpbb?

И о каких других форумных движках идет речь?
Можно ссылочки - посмотреть хочется (может, вдохновит на что-нибудь хорошее и умное)!
С уважением, Михаил Кожурин
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 1 месяц

Сообщение quazi »

sunturner писал(а):И о каких других форумных движках идет речь?
http://www.citkit.ru/section/www_communication/
sunturner писал(а):технологию вики
в это смысле действительно хороша. но в вашем случае - это не то.
лучше - это наверно
sunturner писал(а):реализовать эти идеи на движке phpbb
Добавлено спустя 6 минут 52 секунды:
sunturner писал(а):мод, присваивающий каждому сообщению свой ID для возможности перехода НА СООБЩЕНИЕ через адресную строку браузера.
Проблема в том, что часто хочется сослаться на конкретное сообщение, а не на всю тему.
Выглядеть это должно примерно так: "ссылка на тему"+"номер сообщения в теме".
При переходе по такой ссылке показывается блок сообщений, в котором указанное сообщение - первое.
возникает вопрос
как вы будете реализовывать чтение предыдущих и последующих постов

очень часто, при чтении конкретного поста возникает желание почитать предыдущий или последующий разговор

ставить "условные" ссылки (с проверкой - вдруг это первый или последний пост)?
перед постом - "читать тему сначала"
после поста - "читать тему дальше"
Аватара пользователя
sunturner
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 1 месяц
Откуда: Москва

Сообщение sunturner »

Спасибо за ссылку. Я имел ввиду
quazi писал(а):я бы посоветовал вам искать другой форум, который реализует идею нитей (threads), когда тема может развиваться во многих направлениях.
Где можно ознакомиться с этой "идеей нитей"?

Добавлено спустя 5 минут 50 секунд:
quazi писал(а):возникает вопрос
как вы будете реализовывать чтение предыдущих и последующих постов
как обычно (правда, я уже описывал, ну да ничего):

переходим по ссылке на сообщение - выпадает лист сообщений, как в viewtopic.php
указанное сообщение - первое сверху; последующие - как обычно (если у нас стоит "выводить за один раз 20 сообщений, то следующие 19).
предыдущие сообщения - на предыдущей странице.
Основная идея - первыми сообщениями в листе оказываются не 1 -21-41-61 (если разбиваем по 20), а то, на которое ссылаемся!

Это нужно, например, при длинных постах (на моем форуме посты в среднем по 5000 знаков): при медленной связи в первую очередь выводится текст, на который мы ссылаемся - можно не ждать, пока страница загрузится полностью.

Добавлено спустя 6 минут 38 секунд:

ну вот, о чем я говорил!
начальная тема уже разбилась на несколько подтем - и как быть? создавать для каждой свою тему?

перечислю предлагаемые мной для разработки модификации:

1. мод "Усовершенствованного Viewtopic-а": возможность вывода листов сообщений таким образом, чтобы первым на странице выводилось сообщение, на которое мы ссылаемся, а не сообщение, кратное количеству выводимых на страницу;

2. мод "виртуальных тем": возможность создания тем из ссылок на сообщения из разных тем типа "самые полезные сообщения форума" - ссылки на сообщения в таких темах выводятся как сообщения (сообщения-клоны);

3. мод "подсообщений": аналог ЖЖ-шной организации постов (в каждом сообщении может быть поле вроде "View comments" и "Reply to this");

4. мод "перекрестных форумов": "когда тема может развиваться во многих направлениях" (реализация "идеи нитей").
С уважением, Михаил Кожурин
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 1 месяц

Сообщение quazi »

посмотрите как я сослался на свое предыдущее сообщение
http://phpbbguru.net/community/viewtopi ... 9&start=10

вас такая реализация интересует?

такое реализовано на форуме dklab
1. чтение собщений после моего (если я писал туда)
2. чтение нечитанных (если я читал уже эту тему)

но надо перед первым постом добавлять ссылку "читать сначала" или "читать всю тему"

то что я вам показал имеет недостаток - ссылка на тему содержит параметр start=10
Последний раз редактировалось quazi 23.05.2006 19:41, всего редактировалось 2 раза.
Аватара пользователя
sunturner
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 1 месяц
Откуда: Москва

Сообщение sunturner »

уже почти то! а где "предыдущая страница"? :)
Вы просто начали вывод темы с Вашего сообщения!
С уважением, Михаил Кожурин
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 1 месяц

Сообщение quazi »

я правил свой предыдущий пост, а вы ответили. перечитайте пост выше

Добавлено спустя 23 минуты 38 секунд:

------------------------------
вот примерно такая инструкция

открыть

Код: Выделить всё

viewtopic.php
найти

Код: Выделить всё

//
// Does this topic contain a poll?
//
перед этим добавить

Код: Выделить всё

if ( @$start ) {
        $template->assign_block_vars('read_prev_posts', array(
                'TEXT_READ_PREV_POSTS' => $lang['read_prev_posts'],
                'HREF_READ_PREV_POSTS' => append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id&start=0&postdays=$post_days&postorder=$post_order&highlight=$highlight"),
        ));
}
открыть

Код: Выделить всё

templates/subSilver/viewtopic.tpl
найти

Код: Выделить всё

<!-- BEGIN postrow -->
перед ним добавить

Код: Выделить всё

<!-- BEGIN read_prev_posts -->
<td class="row2">&nbsp;</td>
<td class="row2" align="center"><a class="genmed" href="{read_prev_posts.HREF_READ_PREV_POSTS}">{read_prev_posts.TEXT_READ_PREV_POSTS}</a></td>
<!-- END read_prev_posts -->
открыть

Код: Выделить всё

language/lang_russian/lang_main.php
найти перед добавить

Код: Выделить всё

$lang['read_prev_posts'] = 'Читать всю тему';
Добавлено спустя 3 минуты 6 секунд:

------------------------

мне очень понравился ваш достаточно простой запрос :)
возможно когда-нибудь это понадобится кому-либо еще (возможно и мне) - переименуйте тему (редактированием вашего первого поста) так чтобы название было адекватно содержимому

мне бы хотелось чтобы эту тему легко можно было найти как через поиск так и через список собственных тем
Последний раз редактировалось quazi 23.05.2006 20:31, всего редактировалось 1 раз.

Вернуться в «Запросы модов для phpBB 2.0.x»