ФорумСообществоНаш форум → Подсветка непрочитанных сообщений

Подсветка непрочитанных сообщений

  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 20 ноября 2009 г. 5:30

    была тут у вас тема http://pyha.ru/forum/topic/1394.0 , но сейчас она недоступна.
    Итак, давайте обсудим, как это дело можно реализовать. Может кто-нить поковыряет на досуге существующие форумы, расскажет как там это сделано
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 7:45, спустя 2 часа 15 минут 10 секунд

    теперь доступна?
    Спустя 30 сек.
    Абырвалг, а на каких то ты видел, что такое реализовано уже?
    adw/0
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 7:51, спустя 5 минут 16 секунд

    а что сложного в реализации?
    Сапожник без сапог
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:00, спустя 9 минут 20 секунд

    phpdude, тут просто разные варианты:
    * На стороне PHP подсвечивать рамочки у непрочитанных (формирование шаблона)
    * Средствами js-a подсвечивать, но тогда надо обходить алгоритм smf, который их странно помечает…. короче это все обсуждалось в той теме, если не сложно почитай…

    Я даже написал скрипт бекенда, который отдает для юзера список последних постов…
    Спустя 234 сек.
    http://pyha.ru/static/js/forum/pyhaLastMessages.js
    adw/0
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:10, спустя 10 минут 18 секунд

    блин, не могу найти бекенд… только нашел фронтенд мавра…. ну ни че, у нас же репа ;)
    adw/0
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 20 ноября 2009 г. 8:13, спустя 2 минуты 44 секунды

    во, спасибо, теперь ссылка работает. А то тему в поиске находило, а она не открывалась. Пробовал из кеша поисковиков даже достать, но там тупо страничка авторизации была.

    Интересует только серверное решение.
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:16, спустя 3 минуты 22 секунды

    так а что сложного то?))

    когда юзер посмотрел топики, записываем последний айди темы=> топика в базу, ну и вычитанием находим новые посты и темы. вроде все очевидно
    Сапожник без сапог
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:29, спустя 13 минут 10 секунд

    Интересует только серверное решение.
    у меня была функция, которая по IdUser и IdTopic выдавала список IdPost
    решение для SMF
    adw/0
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 20 ноября 2009 г. 8:30, спустя 10 секунд

    я не знаю, так как еще не интересовался этим вопросом. Так сказать готовлюсь на будущее.
    Вот, обсуждение этого вороса на php.ru http://www.php.ru/forum/viewtopic.php?t=6344
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:30, спустя 30 секунд

    когда юзер посмотрел топики, записываем последний айди темы=> топика в базу
    ну SMF и так записывает это все
    adw/0
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:35, спустя 5 минут 20 секунд

    нашел бекенд

    <?php

    if (!defined('SMF')) define('SMF', NULL);

    $rootdir = $_SERVER['DOCUMENT_ROOT'].'/forum';
    require_once $rootdir.'/Settings.php';
    require_once $sourcedir.'/Load.php';

    //получаем ID пользователя, на основе кук.
    $ID_MEMBER = loadUserSettings('ID_MEMBER');

    //топик
    if(isset($_GET['topic']) and $_GET['topic'] > 0) {
    $ID_TOPIC = $_GET['topic'];
    } else {
    throw new Exception('Topic error');
    }

    //доисторическая версия либы vasa_c (goDB)
    require_once "inc/vasa_c.db.php";

    try {
    $db = new DB($db_server, $db_user, $db_passwd, $db_name);
    $db->setPrefix($db_prefix);
    $db->real_query('set charset utf8');
    } catch (DBExceptionConnect $e) {
    throw new Exception('Error connect');
    }

    //получаем количество непрочитанных сообщений
    $res = $db->query('
    select `id_msg`
    from `smf_messages`
    where `id_msg` > (
    select `id_msg`
    from `smf_log_topics`
    where `id_topic` = ?i and `id_member` = ?i
    )
    and `id_topic` = ?i',
    array($ID_TOPIC, $ID_MEMBER, $ID_TOPIC),
    'col');

    //отдаем фронтенду
    print '['.implode(',', $res).']';
    ?>
    adw/0
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:37, спустя 1 минуту 20 секунд


    Вот, обсуждение этого вороса на php.ru http://www.php.ru/forum/viewtopic.php?t=6344
    вечно хуйню всякую обсуждают …

    а у нас на пыхе - СИСЬКИ!

    Сапожник без сапог
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:42, спустя 5 минут 13 секунд

    буэ
    adw/0
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:48, спустя 6 минут 28 секунд

    adw0rd, я старалсо =))
    Сапожник без сапог
  • md5

    Сообщения: 11948 Репутация: N Группа: в ухо

    Spritz 20 ноября 2009 г. 8:49, спустя 27 секунд

    ммм.
    все умрут, а я изумруд

Пожалуйста, авторизуйтесь, чтобы написать комментарий!