SiDChik Опубликовано 25 Июня 2004 Жалоба Поделиться Опубликовано 25 Июня 2004 Проблема вот в чём:Как я понял инфа о прочитанных сообщениях лежат в кукисах, да и это особо мне и не нужно знать. Дело в другом....Пользоватлеи форума говорят, да и я сам заметил, что чтобы сообщение стало прочитанным необходимо после его прочтение возвращаться на ветку назад и только после этого отмечается что в форуме нету новых сообщении. Вот я и спрашиваю как надо модифицировать код чтобы форум сразу реагировал на такую ситуацию, чтобы пост был сразцу помечен как прочитанный. Ссылка на комментарий Поделиться на других сайтах Прочее
Остап Опубликовано 25 Июня 2004 Жалоба Поделиться Опубликовано 25 Июня 2004 .Поиск по слову БАГ - уже обсуждалась проблема. Ну а насчёт модификации ... Ссылка на комментарий Поделиться на других сайтах Прочее
Dekker Опубликовано 25 Июня 2004 Жалоба Поделиться Опубликовано 25 Июня 2004 да уж ... старый больной вопрос, решения так и не существует ? Ссылка на комментарий Поделиться на других сайтах Прочее
SiDChik Опубликовано 25 Июня 2004 Автор Жалоба Поделиться Опубликовано 25 Июня 2004 я по сути разобрался, но я не ориентируюсь в ск4рипте, потому что я в него залез только два дня назад. (PHP знаю 2 года и уже призёр, но суть не в этом Ж) ) Короче из алгоритма я понял вот что: После прочтения пост считается прочитанным.При том когда просматриваешь ветку, только тогда идёт алгоритм на проверку есть ли новые посты в разделе, и только после этого форум считается прочитанным. Я так думаю что если сделать эту функцию глобальной, или перенести в просмотр поста, т.е. после функции проверки на прочитывания поста а не форума, то возможно проблема уйдёт.Мне мешает исправить этот косяк лишь только то что я ещё не знаю досконально этот скрипт, и знания PHP не дальше книжки по PHP от издательства Питер. может более умные, или знающие скрипт люди найду место откудо перенести функцию. будем ждать. Ссылка на комментарий Поделиться на других сайтах Прочее
Остап Опубликовано 27 Июня 2004 Жалоба Поделиться Опубликовано 27 Июня 2004 Dekker Ну кое кто тут решил САМ проблему вроде ... Добавлено в [mergetime]1088332729[/mergetime] SiDChik Если ты сделаешь глобальной - получится так, что ты зайдя в раздел и прочитав 1 тему получишь, что ты прочитал весь раздел, что ИМХО - не верно. Хотя на ЭТОМ форуме именно так и реализовано. Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 27 Июня 2004 Жалоба Поделиться Опубликовано 27 Июня 2004 Предыдущие обсуждения:Новые сообщения в теме - баг всех invision'ovБаг Предлагаю всё же заняться и написать мод, поскольку дело нужное.Вроде как по слухам есть такой мод у Songа на форуме, и у нас здесь есть, только у нас Обзор новых сообщений после этого мода жутко глючит. Теория:Иконборд хранит даты последнего визита по форумам в куках. Имхо, самый оптимальный вариант. Правда, если форумов много, то куки не спасут - переполнятся. YaBB хранит данные о посещениях в отдельной таблице. Честно сказать, это меня вообще напугало. Я так прикинул грубо, если есть 1000 пользователей, каждый из которых посетил 100 тем, то будет табличка размером в мегабайт. На порядок больше посетителей - 10 мегов. Почаще будут посещать темы - 10 мегов. Если 10000 пользователей посетят каждый по 1000 тем - табличка в 100 мегов. Для крупных форумов получится просто бешеная трата. Ещё теория от Vanish:Кукисы для форумаУниверсальный алгоритм отслеживания изменений Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 27 Июня 2004 Жалоба Поделиться Опубликовано 27 Июня 2004 Имхо, проще всего будет делать так:* Темы:Создать в табличке ibf_topics поле типа text. При любых обновлениях (создание, пост) записывать в это поле ID обновившего. При любых просмотрах дописывать в это поле ID просмотревшего. Проверять тему на "новизну" по наличию ID текущего пользователя в списке просмотревших тему.* Форумы: надо подумать. Ссылка на комментарий Поделиться на других сайтах Прочее
Остап Опубликовано 27 Июня 2004 Жалоба Поделиться Опубликовано 27 Июня 2004 theIggs Может, товарищ СОНГ выскажется. Он грил, что у него реализованно это правильно. Ссылка на комментарий Поделиться на других сайтах Прочее
Mitos Опубликовано 27 Июня 2004 Жалоба Поделиться Опубликовано 27 Июня 2004 А еще он грил что кушать хочет и потому не поделится Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 28 Июня 2004 Жалоба Поделиться Опубликовано 28 Июня 2004 только у нас Обзор новых сообщений после этого мода жутко глючитя его доделал, но забыл поставить сюда, хронически виноват. Ссылка на комментарий Поделиться на других сайтах Прочее
Mitos Опубликовано 29 Июня 2004 Жалоба Поделиться Опубликовано 29 Июня 2004 Vanish поделишься ? Ссылка на комментарий Поделиться на других сайтах Прочее
Остап Опубликовано 18 Июля 2004 Жалоба Поделиться Опубликовано 18 Июля 2004 Как я понял, Ваниш решил проблему просто ( пусть меня поправит Ваниш, если я не прав ) : Чел зашёл в форум определённый или его тему - значит прочитал всё в нём. Он ( Ваниш ) подсовывает челу проапдэйченную куку ( мол этот форум прочтён ) ... $ibforums->forum_read[ $this->forum['id'] ] = time(); $std->hdl_forum_read_cookie('set');Кстати, просто относительно ( всмысле логики и исполнения ) ... Одна проблема - чел прочёл одну тему и вышел с форума - пошёл в другой - а потом не помнит где не читал, тк на главной потух имидж, что в форуме новые темы есть ... ЗЫ Не кидаться камнями, если я неправ ... Ссылка на комментарий Поделиться на других сайтах Прочее
Остап Опубликовано 18 Июля 2004 Жалоба Поделиться Опубликовано 18 Июля 2004 theIggs В Форумс есть такой кусочек :$last_time = $this->read_array[ $topic['tid'] ] > $ibforums->input['last_visit'] ? $this->read_array[ $topic['tid'] ] : $ibforums->input['last_visit']; if ($last_time && ($topic['last_post'] > $last_time)) { $this->new_posts++; $topic['go_new_post'] = "<a href='{$this->base_url}showtopic={$topic['tid']}&view=getnewpost'><{NEW_POST}></a>"; } else { $topic['go_new_post'] = ""; }Может есть возможность ввести такую же переменную new_posts в Топикс , которая будет плюс-плюсится и минус-минусится када надо, а если она ( например при заходе в тему прямо с главной ) вдруг отминус-минусится на ноль - вот только тогда подсаживать мембэру куку "Прочитан Форум" ...Как идейка, Игорь ? И без всяких там доп таблиц и супер навороченных кукис ... Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 19 Июля 2004 Жалоба Поделиться Опубликовано 19 Июля 2004 Чел зашёл в форум определённый или его тему - значит прочитал всё в нём.Вроде так и есть.Vanish предлагал уже делать инсталляшки к тем модам, которые уже поставлены - просто это надо код просмотреть...new_posts в Топикс"Прочитан Форум"Как связана одна тема и прочитанный форум?Ты имеешь в виду, что чел должен прочесть все новые темы в форуме, чтоб форум считался прочтённым? Имхо, правильнее - если зашёл в форум, то форум уже прочтён. Потому что за то время, пока будешь там топики читать, ещё кто-то может ответить - вот тут-то и будет обновление. Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 18 Августа 2004 Жалоба Поделиться Опубликовано 18 Августа 2004 Итак, мод оформлен и выложен.Обсуждаем в теме: Отметка топиков прочитанным, прочитан / не прочитанПиво отправляем Vanishy. Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения