[#] ii-php
Andrew Lobanov(station13, 1) — vit01
2016-04-01 12:45:58


Вопрос по сабжу возник. Я так понял, что механизм подписок это просто скрытие эхоконференций и никаких виртуальных пуллов для новых сообщений пользователь не имеет. Это так?

Как новые эхи добавлять всем в подписки?

[#] Re: ii-php
vit01(mira, 1) — Andrew Lobanov
2016-04-01 15:36:28


AL> Как-то это немного не то, что я имел в виду, говоря о подписках.

А что ты имел в виду? Расскажи, как сам бы это реализовал.

AL> Мне показалось, что такой подход только мешает пользователю. С одной стороны он не помогает отслеживать интересующую активность, с другой стороны, если у меня игнорируется много эх, но нужна одна новая, то их нужно будет убирать снова.

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

Сама фича подписок в сабже была давно добавлена по просьбе поинтов с irk39.tk и на них же обкатана. Вроде бы их всё устроило. Если можешь предложить улучшения, то предлагай.

[#] Re: ii-php
vit01(mira, 1) — Andrew Lobanov
2016-04-01 13:56:02


AL> Вопрос по сабжу возник. Я так понял, что механизм подписок это просто скрытие эхоконференций и никаких виртуальных пуллов для новых сообщений пользователь не имеет. Это так?

Да, это так. Когда ты первый раз заходишь на сайт, тебе в куки идёт список эх, который сохраняется на время всей сессии (20 дней по дефолту). Это просто список и ничего более.

AL> Как новые эхи добавлять всем в подписки?

Добавить в $echolist в конфиге. Кто захочет, тот "вернётся к стандартному набору эх" и получит обновлённый список.

[#] Re: ii-php
Andrew Lobanov(station13, 1) — vit01
2016-04-01 15:08:25


Как-то это немного не то, что я имел в виду, говоря о подписках. Мне показалось, что такой подход только мешает пользователю. С одной стороны он не помогает отслеживать интересующую активность, с другой стороны, если у меня игнорируется много эх, но нужна одна новая, то их нужно будет убирать снова.

ЗЫЖ На правах имха, конечно.

Offtopic: обновления в iing. Исправлены два бага: падение при попытке посчитать количество сообщений в несуществующей эхе и пересоздание файла индекса при ошибках веб-интерфейса. Добавлен пагинатор.

[#] Re: ii-php
Andrew Lobanov(station13, 1) — vit01
2016-04-01 20:17:03


vit01> Не очень понятно, как это в точности будет функционировать. Надо бы это как-то наглядно представить, что ли.

Просто строится список от такого то msgid до такого то msgid. Это типа свежая почта в эхе для пользователя.

vit01> Реализовать это можно, конечно, но у меня такой принцип при написании ноды, что не должно быть ни строчки кода на JavaScript.

Кстати, тут ты прав, пожалуй.

vit01> Специально решил не выносить, чтобы была возможность сделать разные интерфейсы с разным поведением.

Тут уже я чёт не очень понимаю. Вынесение настройки в конфиг никак не мешает использовать эту настройку, а наоборот способствует.

[#] Re: ii-php
vit01(mira, 1) — Andrew Lobanov
2016-04-02 08:36:18


AL> Это типа свежая почта в эхе для пользователя.

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

AL> Вынесение настройки в конфиг никак не мешает использовать эту настройку, а наоборот способствует.

Здесь надо тогда пример привести. Вот зачем я вынес в конфиг параметр жизни сессии? Потому что он будет нужен одинаково для всех веб-интерфейсов: и для нормальных, и для архивных.

Зачем я не выносил параметры фетчера целиком в конфиг, а юзер прописывает их в отдельных файлах? Потому что для каждой ноды нужна своя, особенная конфигурация фетча.
Так же и здесь.

Хотя в будущем всё-таки придётся, наверное, вынести. Ради быстрых обновлений через git. Просто файлы фетчера в любом случае нужно писать вручную, а для интерфейсов ещё давно было решено сделать всё рабочим "из коробки".

[#] Re: ii-php
Andrew Lobanov(station13, 1) — vit01
2016-04-01 17:12:04


vit01> А что ты имел в виду? Расскажи, как сам бы это реализовал.

Я пока придумал себе в todo list хранить в печеньках два msgid на эху. Начало "полученного" и конец "полученного", на основе которых строится список "полученного". Пользователь читает сей спиок, отвечает по необходимости, нажимает кнопку "обновить" и конечный msgid становится начальным, а конечный берётся из индекса эхи. Таким образом создаётся нечто вроде новых сообщений в clii. Пока у меня нет даже приблизительной реализации такого механизма, но я хочу его попробовать когда допилю свою ноду до вменяемого состояния.

То, что сила ii/idec в клиентах я не отрицаю совершенно, но некоторые пользователи у меня ходят иногда через веб-интерфейс. Так что было бы неплохо иметь такую вот фичу. Может даже она поспособствует привлечению в сеть моей жены.

На тему твоего подхода попробуй на странице подписок сделать два списка действительно. Ну и попробуй сделать их в виде списков, а не полей ввода. Я бы сделал даже в одном подписки пользователя, а во втором всё остальное и две кнопочки для перекидывания выделенного элемента туда-сюда. Но это уже не так критично.

// Не подумай, что я наезжаю. Просто развернул для теста версию из гита и немного ввело в ступор такое поведение.

ЗЫЖ А ещё переменную, отвечающую за показ/скрытие последнего сообщения лучше в конфиг, наверное, вынести.

[#] Re: ii-php
vit01(mira, 1) — Andrew Lobanov
2016-04-01 18:33:33


AL> ... Таким образом создаётся нечто вроде новых сообщений в clii. Пока у меня нет даже приблизительной реализации такого механизма, но я хочу его попробовать когда допилю свою ноду до вменяемого состояния.

Не очень понятно, как это в точности будет функционировать. Надо бы это как-то наглядно представить, что ли.
// либо я тупо от недосыпа не могу вникнуть

AL> На тему твоего подхода попробуй на странице подписок сделать два списка действительно.
Попробую сделать так же, как сейчас у Ромы. http://ii.gk11.ru/h/personal

AL> попробуй сделать их в виде списков, а не полей ввода
AL> две кнопочки для перекидывания выделенного элемента туда-сюда

Реализовать это можно, конечно, но у меня такой принцип при написании ноды, что не должно быть ни строчки кода на JavaScript.

Веб-интерфейс ii-php сейчас полностью поддерживает elinks. Для пользователей текстовых браузеров доступны все удобства, что и у "полноценных" юзеров, включая те же подписки. В случае списков и кнопочек они оказываются в пролёте.
Поэтому улучшения в юзабилити из-за этого ограничения будут по минимуму.

AL> ЗЫЖ А ещё переменную, отвечающую за показ/скрытие последнего сообщения лучше в конфиг, наверное, вынести.

Специально решил не выносить, чтобы была возможность сделать разные интерфейсы с разным поведением. То есть на обычной морде показывать последнее, а на "архивной" морде не показывать.

Загляни в ii-web.php из гита, там в комментарии всё прописано. Оно включается и отключается очень быстро.

[#] Re: ii-php
Andrew Lobanov(station13, 1) — vit01
2016-04-04 18:43:45


vit01> Про свежую почту уже понял, но тут другое имеется в виду. Именно как оно будет для пользователя выглядеть.

Я хочу попробовать нечто вроде того, как оно было в clii.

[#] Re: ii-php
vit01(mira, 1) — vit01
2016-04-08 20:22:31


Улучшение юзабилити:

* В диалог подписок добавлен стандартный список эх, чтобы быть в курсе

http://ii-net.tk/ii/ii-web.php?action=personal
// если уже были здесь до этого, то обновить через Ctrl+F5

Вёрстка адаптивная, так что на телефоне это тоже смотрится нормально.

P.S. ветка features ноды

[#] Re: ii-php
vit01(mira, 1) — vit01
2016-04-14 18:55:24


Изменение в features-ветке:

* Настройки веб-интерфейса вынесены в конфиг (все, включая количество сообщений на странице)
* Сам конфиг немного причёсан, и там чуть больше комментариев