Уже всю голову сломал, а решить то нужно, как всегда, элементарную задачу. Прошу помощи.
Есть представление, в нем список материалов. Нужно поставить отметку "просмотрено" тем, которые пользователь уже смотрел. Пробовал модуль https://www.drupal.org/project/recently_read, но с views он работает как минимум странно и именно для моих целей не подходит. Он создает свой views и там всё понятно, но чтобы в кастомном views одновременно вывести и просмотренные (с соответствующей отметкой) и еще не просмотренные ноды — никак не получается.
Кто-нибудь сталкивался с подобной задачей? Как решили?
P.S. в качестве примера YouTube или тот же adme.ru (там просмотренные статьи другим цветом выделяются).
Комментарии
Какой пользователь анонимный или зарегеный?
Это вроде бы небольшой совсем функционал,думаю в препроцесс вместиться
желательно, конечно и для тех, и для других
Для маркировки нод как новые/обновленные/прочитанные имеется функция node_mark() https://api.drupal.org/api/drupal/modules!node!node.module/function/node_mark/7
На adme данные о просмотре записываются в locale storage
думаю, это не совсем то, что нужно, для анонимов, по крайней мере точно
тогда делайте как на adme (понятно, что нужны знания js), на ютубе данный функционал реализован только для авторизованных пользователей
при открытии страницы материала добавляется в locale storage id просматриваемого топика и timestamp времени просмотра, а потом при выводе cписка материалов скриптом добавляется класс article-visited просмотренным материалам
Для авторизованных сделал через трекер (спасибо за мысль drupby), для анонимов решил не заморачиваться, пусть будет дополнительной мотивацией к регистрации
Но вот возник еще один вопрос: как бы сделать еще и страницу со списком всех просмотренных материалов и выстроить их в обратном хронологическому порядке (то есть первым должен быть тот, который просмотрен последним)?